:root{--brand: #885961;--brand-2: #a7777e;--brand-soft: #f4eaeb;--ink: #302a2c;--ink-2: #61585b;--muted: #797074;--line: #e8e1de;--bg: #f7f5f2;--card: #ffffff;--success: #10b981;--danger: #ef4444;--warning: #f59e0b;--radius: 14px;--radius-sm: 10px;--shadow-sm: 0 1px 2px rgba(31, 35, 48, .04), 0 2px 8px rgba(31, 35, 48, .04);--shadow-md: 0 8px 24px rgba(31, 35, 48, .08);--shadow-brand: 0 3px 8px rgba(99, 65, 71, .08)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:15px;line-height:1.5;overscroll-behavior-y:none;overflow-wrap:anywhere}.usage-guide{max-width:1100px;margin:12px auto 110px;padding:0 16px}.guide-toggle{border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink-2);padding:10px 14px;min-height:44px}.guide-content{margin-top:8px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);line-height:1.8}.guide-links{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.guide-links a{padding:8px 12px;color:var(--brand);border-radius:8px;background:var(--brand-soft)}.preview-banner{background:#fffbeb;padding:12px;border-radius:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.table-scroll table{min-width:600px}@media (max-width: 768px){button,.btn,.btn.sm,.modal-close{min-height:44px}input,select,textarea,.input{font-size:16px;min-width:0}.modal-panel{max-height:calc(100dvh - 16px);overscroll-behavior:contain;scroll-padding-bottom:24px}.modal-header{position:sticky;top:-22px;background:#fff;padding:12px 0;z-index:1}.modal-close{min-width:44px}.card{min-width:0}}button,input,select,textarea{font-family:inherit}button{cursor:pointer}a{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#8a94a659;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#8a94a68c}::-webkit-scrollbar-track{background:transparent}.container{width:100%;max-width:520px;margin:0 auto;padding:18px 16px;padding-bottom:calc(104px + env(safe-area-inset-bottom,0px));min-height:100%}.container.no-nav{padding-bottom:28px}.top-bar{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;padding-top:calc(14px + env(safe-area-inset-top,0px));background:#ffffffc7;backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-bottom:1px solid rgba(31,35,48,.06)}.top-bar h1{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:700;letter-spacing:-.2px;color:var(--ink)}.top-bar button{background:var(--brand-soft);border:none;color:var(--brand);font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;transition:background .16s ease,transform .1s ease}.top-bar button:hover{background:#ffe1e8}.top-bar button:active{transform:scale(.96)}.top-bar .top-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.card{background:var(--card);border:1px solid rgba(31,35,48,.04);border-radius:var(--radius);padding:18px;margin-bottom:14px;box-shadow:var(--shadow-sm);transition:box-shadow .18s ease,transform .18s ease}.card-title{font-size:15px;font-weight:700;margin-bottom:14px;color:var(--ink);letter-spacing:-.1px}@media (hover: hover){.card.interactive:hover,.menu-item:hover,.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}}.btn{display:block;width:100%;padding:14px 18px;border:none;border-radius:14px;background:linear-gradient(135deg,var(--brand-2) 0%,var(--brand) 100%);color:#fff;font-size:15px;font-weight:650;letter-spacing:.1px;box-shadow:var(--shadow-brand);transition:transform .12s ease,box-shadow .16s ease,opacity .16s ease;-webkit-user-select:none;user-select:none}.btn:hover{transform:translateY(-1px);box-shadow:0 14px 32px #f43f5e4d}.btn:active{transform:translateY(0) scale(.985)}.btn:disabled{background:#e6e8ee;color:#9aa1af;box-shadow:none;cursor:not-allowed;transform:none}.btn:focus-visible{outline:3px solid rgba(244,63,94,.28);outline-offset:2px}.btn.secondary{background:#fff;color:var(--brand);border:1.5px solid #ffd3de;box-shadow:0 4px 14px #1f23300a}.btn.secondary:hover{background:var(--brand-soft);box-shadow:0 8px 20px #f43f5e1f}.btn.secondary:active{background:#ffe5eb}.btn.ghost{background:#f3f4f8;color:var(--ink-2);box-shadow:none}.btn.ghost:hover{background:#eaedf3}.btn.danger{background:linear-gradient(135deg,#ff6b6b 0%,var(--danger) 100%);box-shadow:0 8px 20px #ef444438}.btn.sm{padding:8px 14px;font-size:13px;width:auto;display:inline-block;border-radius:10px}.input{width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:13px;font-size:16px;outline:none;background:#fafbfd;color:var(--ink);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.input:focus{border-color:var(--brand);background:#fff;box-shadow:0 0 0 4px #f43f5e1a}.input::placeholder{color:#b4bac7}textarea.input{resize:vertical;min-height:88px}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238a94a6' d='M6 8L2 4h8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}.label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin:14px 0 7px}.title{font-size:24px;font-weight:800;margin-bottom:6px;color:var(--ink);letter-spacing:-.4px}.subtitle{font-size:14px;color:var(--muted);margin-bottom:20px}.hint{color:var(--muted);font-size:12px;margin-top:5px;line-height:1.6}.section-title{font-size:13px;font-weight:700;color:var(--ink-2);margin:18px 4px 10px;letter-spacing:.4px}.error{color:#b91c1c;font-size:13px;margin-top:10px;padding:10px 12px;background:#fff1f2;border:1px solid #fecdd3;border-radius:12px}.success{color:var(--success);font-size:13px;margin-top:10px}.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.1px;white-space:nowrap}.badge.pending{background:#fff4e0;color:#b45309}.badge.confirmed,.badge.active,.badge.paid{background:#e7f8f0;color:#047857}.badge.checked_in{background:#e8f1ff;color:#1d4ed8}.badge.serving{background:#f1ebff;color:#6d28d9}.badge.completed{background:#eef0f5;color:#475569}.badge.cancelled,.badge.no_show{background:#ffe9e9;color:#b91c1c}.badge.draft{background:#fff7e6;color:#b45309}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.menu-item{position:relative;overflow:hidden;min-height:68px;display:flex;align-items:center;justify-content:center;padding:14px 16px;text-align:center;background:linear-gradient(180deg,#fff,#fdfafb);border:1px solid rgba(31,35,48,.04);border-radius:16px;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .14s ease,box-shadow .16s ease,border-color .16s ease}.menu-item:after{content:"";position:absolute;left:18px;right:18px;bottom:0;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--brand-2),var(--brand));opacity:0;transform:scaleX(.4);transition:opacity .18s ease,transform .18s ease}.menu-item:hover{border-color:#ffd3de}.menu-item:hover:after{opacity:1;transform:scaleX(1)}.menu-item:active{transform:scale(.97)}.menu-item .name{font-size:14px;font-weight:650;color:var(--ink)}.list-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}.list-item:last-child{border-bottom:none}.list-item .info{flex:1;min-width:0}.list-item .primary{font-size:15px;font-weight:650;color:var(--ink);margin-bottom:2px}.list-item .secondary{font-size:13px;color:var(--muted)}.empty-state{padding:56px 20px;text-align:center;color:var(--muted)}.empty-state .text{font-size:14px}.empty-state .icon{font-size:42px;margin-bottom:12px;opacity:.45}.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.stat-card{background:linear-gradient(180deg,#fff,#fcfcfd);border:1px solid rgba(31,35,48,.04);border-radius:16px;padding:16px;box-shadow:var(--shadow-sm);transition:transform .14s ease,box-shadow .16s ease}.stat-card .stat-label{font-size:12px;color:var(--muted);margin-bottom:7px;font-weight:500}.stat-card .stat-value{font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.4px}.stat-card .stat-value.pink{color:var(--brand)}.stat-card .stat-value.green{color:var(--success)}.stat-card .stat-value.red{color:var(--danger)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:90;display:flex;justify-content:space-around;gap:4px;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));background:#ffffffdb;backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-top:1px solid rgba(31,35,48,.06)}.bottom-nav .nav-item{flex:1;min-height:46px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:14px;color:var(--muted);font-size:13px;font-weight:650;transition:background .16s ease,color .16s ease,transform .1s ease}.bottom-nav .nav-item:hover{background:#f4f5f9}.bottom-nav .nav-item:active{transform:scale(.96)}.bottom-nav .nav-item.active{color:var(--brand);background:var(--brand-soft)}.bottom-nav .nav-item .nav-icon{font-size:20px;line-height:1}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot-btn{padding:12px 0;border:1.5px solid var(--line);background:#fff;border-radius:12px;font-size:13px;font-weight:650;color:var(--ink-2);transition:all .14s ease}.slot-btn:hover{border-color:#ffb7cb;background:#fff7f9}.slot-btn:active{transform:scale(.96)}.slot-btn.selected{border-color:var(--brand);background:var(--brand-soft);color:var(--brand);box-shadow:0 4px 14px #f43f5e29}.segmented{display:flex;gap:3px;padding:4px;background:#f0f1f5;border-radius:14px;margin-bottom:14px}.segmented button{flex:1;padding:9px 0;border:none;background:transparent;border-radius:11px;font-size:13px;font-weight:650;color:var(--ink-2);transition:all .15s ease}.segmented button:hover{color:var(--ink)}.segmented button.active{background:#fff;color:var(--brand);box-shadow:0 3px 10px #1f233014}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#19192380;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:200;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-panel{background:#fff;width:100%;max-width:520px;border-radius:24px 24px 0 0;padding:22px 20px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));max-height:92vh;overflow-y:auto;box-shadow:0 -12px 40px #1f233029;animation:slideUp .22s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal-header .modal-title{font-size:18px;font-weight:800;letter-spacing:-.2px}.modal-close{background:#f2f3f7;border:none;width:34px;height:34px;border-radius:50%;font-size:20px;line-height:1;color:var(--ink-2);display:flex;align-items:center;justify-content:center;transition:background .15s ease,transform .1s ease}.modal-close:hover{background:#e7e9ef}.modal-close:active{transform:scale(.9)}.brand-header{padding:64px 0 34px;text-align:center}.brand-logo{width:76px;height:76px;border-radius:24px;margin:0 auto 18px;background:linear-gradient(135deg,var(--brand-2) 0%,var(--brand) 100%);color:#fff;font-size:28px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 32px #f43f5e47}.brand-logo:after{content:"馨如"}.brand-title{font-size:27px;font-weight:800;color:var(--ink);letter-spacing:-.5px}.brand-sub{font-size:13px;color:var(--muted);margin-top:6px}.card.hero{background:linear-gradient(135deg,#ff8098 0%,var(--brand) 100%);color:#fff;border:none;box-shadow:0 14px 34px #f43f5e47}.card.hero .hero-title{font-size:17px;font-weight:750;margin-bottom:5px;letter-spacing:-.1px}.card.hero .hero-sub{font-size:13px;opacity:.92}.calendar-card{padding:14px}.calendar-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-day-cell{min-width:0;min-height:76px;padding:7px 3px 6px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink-2);display:flex;flex-direction:column;align-items:center;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease,transform .1s ease}.calendar-day-cell:hover{border-color:#ffc4d3}.calendar-day-cell:active{transform:scale(.96)}.calendar-day-cell.today{border-color:#ffb7cb;background:#fff7f9}.calendar-day-cell.selected{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 3px #f43f5e1f}.calendar-day-cell.closed{background:#f7f7f9;color:var(--muted)}.calendar-day-week{font-size:10px;color:var(--muted);line-height:1.2}.calendar-day-num{margin-top:2px;font-size:17px;line-height:1.15;font-weight:800;color:var(--ink)}.calendar-day-cell.today .calendar-day-num,.calendar-day-cell.selected .calendar-day-num{color:var(--brand)}.calendar-day-count{margin-top:3px;font-size:10px;color:var(--ink-2);white-space:nowrap}.calendar-day-dots{display:flex;gap:2px;margin-top:4px;min-height:5px}.calendar-dot{width:5px;height:5px;border-radius:50%;display:inline-block}@supports (padding: env(safe-area-inset-bottom)){.container{padding-bottom:calc(104px + env(safe-area-inset-bottom))}}@media (min-width: 768px){.container{max-width:760px;padding:26px 24px 128px}.top-bar{max-width:760px;margin:0 auto;border-radius:0 0 20px 20px;padding-left:22px;padding-right:22px}.top-bar h1{font-size:20px}.card{border-radius:20px;padding:22px}.menu-grid{grid-template-columns:repeat(3,1fr);gap:14px}.menu-item{min-height:78px;padding:18px 16px}.menu-item .name{font-size:14px}.slot-grid{grid-template-columns:repeat(6,1fr)}.modal-backdrop{align-items:center}.modal-panel{max-width:560px;border-radius:22px}.bottom-nav{max-width:760px;left:50%;transform:translate(-50%);border-radius:20px 20px 0 0;box-shadow:0 -6px 24px #1f233014}.calendar-week-grid{gap:8px}.calendar-day-cell{min-height:88px}.calendar-day-num{font-size:19px}}@media (min-width: 1100px){.container,.top-bar,.bottom-nav{max-width:980px}.menu-grid{grid-template-columns:repeat(4,1fr);gap:16px}}@media (prefers-reduced-motion: reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.muted{color:var(--muted);font-size:13px;line-height:1.7}.top-bar{background:#fffdfbf5;border-color:var(--line);-webkit-backdrop-filter:none;backdrop-filter:none}.top-bar button{border-radius:8px;font-weight:500}.top-bar button:hover{background:#eadcde}.card,.stat-card,.menu-item{border:1px solid var(--line);box-shadow:none;border-radius:var(--radius);background:var(--card)}.card.interactive:hover,.menu-item:hover,.stat-card:hover{transform:none;box-shadow:var(--shadow-sm)}.btn{background:var(--brand);border-radius:10px;font-weight:600;box-shadow:none;min-height:44px}.btn:hover{background:#764b52;transform:none;box-shadow:none}.btn.secondary{border:1px solid #d9c5c8;color:var(--brand);box-shadow:none}.btn.secondary:hover{box-shadow:none}.btn.danger{background:#ad4646;box-shadow:none}.btn.danger:hover{background:#953838}.btn.ghost{background:#f2efec}.danger-outline{color:#a13e3e!important;border:1px solid #e8c9c9}.input{border:1px solid var(--line);border-radius:9px;background:#fdfcfb}.input:focus{box-shadow:0 0 0 3px #8859611f}:is(button,a,input,textarea,select,summary):focus-visible{outline:3px solid #b2868d;outline-offset:3px}.card.hero{background:#f0e5e4;color:var(--ink);border:1px solid #e6d6d5;box-shadow:none}.card.hero .hero-sub{color:var(--ink-2)}.brand-logo{background:var(--brand);box-shadow:none}.brand-title{font-weight:650}.menu-item:after{display:none}.menu-item:hover{border-color:#cdb5b9}.badge{font-weight:500}.bottom-nav{background:#fffdfb;-webkit-backdrop-filter:none;backdrop-filter:none;border-color:var(--line);box-shadow:none}.bottom-nav .nav-item{font-weight:500;border-radius:8px;font-size:12px}.bottom-nav .nav-item:hover{background:#f4eeeb}.calendar-day-cell.selected{box-shadow:0 0 0 2px #8859611f}.calendar-day-cell.today{background:#faf4f3;border-color:#d5b7bd}.slot-btn.selected{box-shadow:none}.modal-backdrop{background:#302a2c66;-webkit-backdrop-filter:none;backdrop-filter:none}.modal-panel{border-radius:18px 18px 0 0;box-shadow:0 12px 48px #302a2c1f}.modal-header{background:#fff}.usage-guide{margin-bottom:12px}.eyebrow{font-size:11px;letter-spacing:1.6px;color:var(--brand);font-weight:600;margin-bottom:9px}.welcome-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:6px 0 26px}.welcome-header h2{font-size:26px;letter-spacing:-.5px;font-weight:650;margin-bottom:8px}.date-note{font-size:12px;white-space:nowrap;color:var(--muted);border-left:1px solid var(--line);padding-left:20px}.primary-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px}.action-tile{position:relative;min-width:0;padding:20px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;text-align:left;color:var(--ink)}.action-tile:first-child{background:var(--brand);border-color:var(--brand);color:#fff}.action-tile:first-child>span{color:#f0e2e5}.action-tile:hover{border-color:var(--brand)}.action-tile strong{font-size:18px;font-weight:600}.action-tile>span{color:var(--muted);font-size:12px}.action-tile .action-number{font-size:11px;letter-spacing:1px;margin-bottom:5px}.action-tile .action-arrow{position:absolute;right:18px;top:18px;font-size:18px}.work-columns{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.section-heading h3,.workflow-note h3{font-size:16px;font-weight:600}.section-heading .btn{flex-shrink:0}.count-label{padding:4px 11px;border-radius:7px;background:#f4eeeb;color:var(--brand);font-size:13px}.quiet-empty{padding:26px 10px;text-align:center;color:var(--muted);font-size:13px}.quiet-empty strong{font-weight:500;color:var(--ink-2)}.quiet-empty p{margin:8px 0 14px;line-height:1.7}.agenda-row{width:100%;display:flex;align-items:center;gap:16px;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:16px 0}.agenda-row:last-child{border-bottom:0}.agenda-row>span:nth-child(2){flex:1}.agenda-row strong{font-size:14px;font-weight:600;display:block}.agenda-row small{display:block;color:var(--muted);margin-top:3px}.agenda-time{font-variant-numeric:tabular-nums;color:var(--brand);font-size:14px}.pending-panel>.btn{margin-top:12px}.workflow-note{background:#f0eeea;border-color:transparent}.workflow-note p{font-size:13px;margin-top:8px;line-height:1.9;color:var(--ink-2)}.workflow-note p span{color:#aa9297;margin:0 8px}.management-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start;margin-top:22px}.function-group summary{display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;list-style:none;min-height:44px}.function-group summary::-webkit-details-marker{display:none}.function-group summary strong{display:block;font-size:14px;font-weight:600}.function-group summary small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:5px}.function-group[open] .disclosure-mark{transform:rotate(45deg)}.function-links{display:grid;gap:4px;border-top:1px solid var(--line);margin-top:16px;padding-top:10px}.function-links button{display:flex;justify-content:space-between;align-items:center;min-height:44px;border:0;background:none;text-align:left;color:var(--ink-2);padding:9px 0}.function-links button:hover{color:var(--brand)}.admin-entry{background:#f0e7e5;padding:26px;display:flex;justify-content:space-between;gap:24px;align-items:center}.admin-entry h3{font-size:23px;font-weight:600;margin-bottom:8px}.admin-entry p:not(.eyebrow){color:var(--ink-2);font-size:13px}.admin-entry .btn{width:auto;white-space:nowrap}.admin-section{margin:24px 0}.admin-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-link{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 32px 20px 18px;text-align:left;color:var(--ink)}.admin-link strong{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.admin-link>span{font-size:12px;color:var(--muted)}.admin-link i{position:absolute;right:14px;top:18px;font-style:normal;color:#aa9297}.data-layout{display:grid;grid-template-columns:195px minmax(0,1fr);gap:22px;align-items:start}.data-category-select{display:none}.data-sidebar{position:sticky;top:86px;border-right:1px solid var(--line);padding-right:14px;max-height:calc(100dvh - 180px);overflow-y:auto}.data-sidebar details{margin-bottom:6px}.data-sidebar summary{font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;padding:14px 6px;min-height:44px}.data-sidebar button{display:block;width:100%;background:none;border:0;text-align:left;font-size:12px;color:var(--muted);border-radius:8px;min-height:44px;padding:10px 12px;margin-bottom:2px}.data-sidebar button.active{color:var(--brand);background:var(--brand-soft);font-weight:600}.data-main{min-width:0}.data-tabs{margin-bottom:0;flex-shrink:0;gap:2px;background:#ede7e4}.data-tabs button{padding:10px 12px}.data-search{display:flex;gap:10px;margin-bottom:14px}.data-search .input{min-width:0}.data-search .btn{flex-shrink:0}.data-policy{background:#f0ece8;border-left:3px solid #c8b4ac;border-radius:0 8px 8px 0;color:var(--ink-2);font-size:12px;line-height:1.8;padding:12px 14px;margin:12px 0 18px}.record-list{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.record-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;border-bottom:1px solid var(--line)}.record-row:last-child{border-bottom:0}.record-summary{min-width:0}.record-summary strong{font-size:14px;font-weight:600}.record-summary p{margin:5px 0;font-size:12px;color:var(--ink-2)}.record-summary small,.record-id{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.record-row .btn{flex-shrink:0}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;font-size:12px;color:var(--muted)}.record-modal{max-width:640px}.record-modal h3{font-size:18px;font-weight:600}.record-fields{margin-top:16px}.record-fields>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;border-bottom:1px solid var(--line);padding:11px 0;font-size:13px}.record-fields dt{color:var(--muted)}.record-fields dd{white-space:pre-wrap}.record-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.record-actions>.btn:first-child{grid-column:1/-1}.record-modal .label .input{margin-top:8px}.dialog-footer{display:flex;gap:10px;margin-top:22px;padding:12px 0 0}.dialog-footer .btn{flex:1;min-width:0}.change-list{display:grid;gap:14px;margin-top:18px}.change-list>div{border:1px solid var(--line);border-radius:10px;padding:14px;font-size:13px}.change-list>div>div{margin-top:10px}.change-list span{color:var(--muted);font-size:11px}.change-list p{margin-top:4px;white-space:pre-wrap}.admin-assist-banner{max-width:980px;margin:10px auto;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;padding:10px 18px;background:#ede8e2;color:var(--ink-2);border-radius:8px}@media (min-width:768px){.modal-panel{border-radius:16px}.container.workspace,.container.data-workspace{max-width:1100px}.top-bar{border-radius:0}.bottom-nav{width:calc(100% - 48px);right:auto;max-width:980px}}@media (max-width:767px){.container{padding:20px 16px 96px}.welcome-header{align-items:flex-start;padding-bottom:20px}.welcome-header h2{font-size:23px}.date-note{display:none}.primary-actions{gap:8px;margin-bottom:20px}.action-tile{padding:15px 10px;gap:7px;min-height:119px}.action-tile strong{font-size:15px}.action-tile>span{font-size:11px;line-height:1.6}.action-tile .action-arrow{display:none}.work-columns,.management-groups{grid-template-columns:1fr;gap:0}.management-groups{margin-top:20px}.admin-entry{display:block;padding:22px}.admin-entry .btn{margin-top:18px;width:100%}.admin-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-link{padding:17px 25px 17px 13px}.data-layout{grid-template-columns:1fr;gap:18px}.data-category-select{display:block;margin:0 0 22px}.data-category-select select{margin-top:8px}.data-sidebar{display:none}.data-sidebar{position:static;max-height:none;border-right:0;padding:12px;background:#fff;border:1px solid var(--line);border-radius:12px}.data-sidebar details{margin-bottom:0}.data-sidebar details[open]{display:flex;flex-wrap:wrap}.data-sidebar summary{padding:9px 4px}.data-sidebar button{display:inline-block;width:auto;margin:2px;padding:8px 10px}.data-main .section-heading{align-items:flex-start;flex-direction:column;gap:12px}.data-tabs{align-self:stretch}.record-row{align-items:flex-start;padding:14px;gap:10px}.record-row .btn{font-size:11px;padding:9px}.record-fields>div{grid-template-columns:100px minmax(0,1fr);gap:12px}.record-actions{grid-template-columns:1fr}.record-modal{max-height:calc(100dvh - 16px);padding:18px 16px 24px}.record-modal .modal-header{top:-18px}.admin-assist-banner{margin:8px 12px}}.loading-bar{position:fixed;inset:0 0 auto;height:3px;z-index:10000;overflow:hidden;background:#f1e4e6;pointer-events:none}.loading-bar span{display:block;height:100%;width:38%;background:var(--brand);animation:request-loading 1.2s ease-in-out infinite}@keyframes request-loading{0%{transform:translate(-110%)}to{transform:translate(365%)}}.search-feedback{display:block;margin:8px 0;font-size:13px;line-height:1.6;color:#76656a}.route-loading{padding:40px 24px;text-align:center;color:#76656a}.route-loading .loading-bar{position:relative;margin:16px auto;max-width:240px;border-radius:4px}@media (prefers-reduced-motion: reduce){.loading-bar span{animation:none;width:100%;opacity:.7}}
