:root{--paper:#f6f2e9;--surface:#fffdf8;--ink:#292d2b;--muted:#777a74;--line:#ddd8cc;--blue:#526f7c;--blue-soft:#dce7e9;--sage:#93aa96;--clay:#c99a7d;--lilac:#aaa0ba;--gold:#c6aa6a;--unknown:#e3ded3;--shadow:0 14px 42px rgba(49,46,39,.07)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei UI","PingFang SC",sans-serif}.shell{min-height:100vh;display:grid;grid-template-columns:190px minmax(620px,1fr) 292px}.sidebar{padding:28px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:11px;align-items:center;color:inherit;text-decoration:none;font-weight:700}.brand-mark{width:34px;height:34px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:italic 20px Georgia,serif}.brand small{display:block;color:var(--muted);font:10px Georgia,serif;letter-spacing:.08em;margin-top:2px}.sidebar nav{display:grid;gap:7px;margin-top:48px}.sidebar nav a{color:var(--muted);text-decoration:none;padding:10px 12px;border-radius:9px}.sidebar nav a.active{background:var(--surface);color:var(--ink);box-shadow:0 4px 16px rgba(49,46,39,.05)}.device-card{margin-top:auto;display:flex;gap:9px;align-items:flex-start;font-size:12px}.device-card i{width:8px;height:8px;border-radius:50%;background:#b9b5aa;margin-top:5px}.device-card i.online{background:var(--sage);box-shadow:0 0 0 4px rgba(147,170,150,.18)}.device-card small{display:block;color:var(--muted);margin-top:4px}main{padding:38px 42px 70px}.topbar,.section-head,.capture-controls,.quick-entry>div,.calendar-title{display:flex;align-items:center;justify-content:space-between}.topbar h1{font:400 38px Georgia,"Songti SC",serif;margin:3px 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:11px;margin:0}.capture-controls{gap:10px}.button,button{font:inherit;cursor:pointer}.button{border:1px solid var(--line);border-radius:9px;padding:10px 15px;background:var(--surface);color:var(--ink)}.button.primary{background:var(--ink);color:white;border-color:var(--ink)}.button:disabled{opacity:.45;cursor:not-allowed}.status-pill{font-size:12px;color:var(--muted);padding-right:7px}.day-ribbon{margin:28px 0 24px;padding:22px 24px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.ribbon-copy{display:flex;align-items:baseline;gap:9px;margin-bottom:16px}.ribbon-copy strong{font:32px Georgia,serif}.ribbon-copy span{font-size:13px;color:var(--muted)}.ribbon-track{height:24px;border-radius:7px;overflow:hidden;background:repeating-linear-gradient(90deg,var(--unknown) 0,var(--unknown) calc(4.166% - 1px),#f3efe7 calc(4.166% - 1px),#f3efe7 4.166%);display:flex}.ribbon-track i{height:100%;display:block}.ribbon-hours{display:flex;justify-content:space-between;color:#99978f;font:10px ui-monospace,monospace;margin-top:8px}.quick-entry{background:#ebe6dc;border-radius:14px;padding:18px 20px;margin-bottom:24px}.quick-entry label{display:block;font:16px Georgia,"Songti SC",serif;margin-bottom:12px}.quick-entry>div{gap:10px}.quick-entry input,.dialog-actions+input{width:100%}.quick-entry input,dialog input{flex:1;border:1px solid transparent;background:var(--surface);border-radius:9px;padding:12px 14px;font:inherit;outline:none}.quick-entry input:focus,dialog input:focus{border-color:var(--blue)}.quick-entry button{border:0;border-radius:9px;background:var(--blue);color:#fff;padding:12px 18px}.quick-entry p{height:0;margin:6px 0 0;color:var(--muted);font-size:12px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:var(--shadow)}.section-head{margin-bottom:22px}.section-head h2{font:400 22px Georgia,"Songti SC",serif;margin:5px 0 0}.muted{color:var(--muted);font-size:12px}.distribution{display:grid;gap:16px}.bar-row{display:grid;grid-template-columns:84px 1fr 72px;gap:14px;align-items:center;font-size:13px}.bar-track{height:12px;background:#eeeae1;border-radius:6px;overflow:hidden}.bar-fill{height:100%;border-radius:6px}.bar-time{text-align:right;font:12px ui-monospace,monospace}.text-button{background:none;border:0;color:var(--blue)}.timeline{position:relative;display:grid;gap:4px}.timeline:before{content:"";position:absolute;left:55px;top:7px;bottom:7px;width:1px;background:var(--line)}.timeline-item{display:grid;grid-template-columns:44px 1fr;gap:24px;padding:10px 0}.timeline-time{font:11px ui-monospace,monospace;color:var(--muted)}.timeline-card{position:relative;padding:13px 15px;border-radius:10px;background:#f2eee6}.timeline-card:before{content:"";position:absolute;left:-18px;top:17px;width:7px;height:7px;border-radius:50%;background:var(--dot,var(--blue));border:3px solid var(--surface)}.timeline-card strong{font-size:14px}.timeline-card p{margin:5px 0 0;color:var(--muted);font-size:11px}.empty{padding:28px;text-align:center;color:var(--muted)}.context-rail{border-left:1px solid var(--line);padding:38px 24px;position:sticky;top:0;height:100vh}.calendar-card,.quiet-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px}.calendar-title button{border:0;background:none;font-size:22px;color:var(--muted)}.weekdays,.mini-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.weekdays{margin:18px 0 8px;color:var(--muted);font-size:10px}.mini-calendar span{aspect-ratio:1;display:grid;place-items:center;border-radius:50%;font-size:11px}.mini-calendar .today{outline:1px solid var(--ink)}.mini-calendar .filled{background:var(--blue-soft)}.mini-calendar .outside{color:#c5c1b8}.quiet-card{margin-top:16px}.quiet-card strong{display:block;font:26px Georgia,serif;margin:10px 0}.quiet-card p:last-child{color:var(--muted);font-size:12px;line-height:1.7}dialog{border:0;border-radius:16px;padding:0;background:var(--surface);box-shadow:0 30px 100px rgba(30,29,26,.25);width:min(470px,calc(100vw - 32px))}dialog::backdrop{background:rgba(40,40,36,.32);backdrop-filter:blur(3px)}dialog form{padding:30px;position:relative}dialog h2{font:400 26px Georgia,"Songti SC",serif;margin:8px 0}dialog p{color:var(--muted);font-size:13px;line-height:1.7}.dialog-close{position:absolute;right:18px;top:15px;border:0;background:none;font-size:24px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.error{color:#a25145}.button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media(max-width:1100px){.shell{grid-template-columns:76px 1fr}.sidebar{padding:26px 12px}.brand>span:last-child,.sidebar nav a:not(.active),.device-card div{display:none}.sidebar nav a{font-size:0}.sidebar nav a:before{content:"·";font-size:24px}.context-rail{display:none}}@media(max-width:720px){.shell{display:block}.sidebar{position:fixed;z-index:5;bottom:0;top:auto;width:100%;height:62px;border:0;border-top:1px solid var(--line);background:var(--paper);padding:8px}.brand,.device-card{display:none}.sidebar nav{margin:0;display:flex;justify-content:space-around}.sidebar nav a,.sidebar nav a:not(.active){display:block;font-size:11px;padding:10px}.sidebar nav a:before{display:none}main{padding:24px 18px 90px}.topbar{align-items:flex-start}.capture-controls{flex-wrap:wrap;justify-content:flex-end}.status-pill{width:100%;text-align:right}.day-ribbon{padding:18px}.quick-entry>div{align-items:stretch}.bar-row{grid-template-columns:64px 1fr 58px}.panel{padding:18px}}

/* --- Sidebar Overrides for SVG & Drawer (app-sidebar-6 style) --- */
.sidebar nav a {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    color: var(--muted);
    transition: all 0.2s ease;
}
.sidebar nav a:hover {
    background: var(--surface);
    color: var(--ink);
}
.sidebar nav a svg {
    flex-shrink: 0;
}
.sidebar nav a .nav-icon { display: none; } /* hide old text icons if any remain */

.mobile-menu-btn {
    display: none;
    background: none;
    border: none;
    padding: 8px;
    cursor: pointer;
    color: var(--ink);
    margin-right: 12px;
}
.sidebar-scrim {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 40;
    backdrop-filter: blur(2px);
}

@media(max-width:1100px) {
    .sidebar nav a .nav-label { display: none; }
    .sidebar nav a { justify-content: center; padding: 12px; font-size: inherit; }
    .sidebar nav a:before { content: none !important; display: none !important; }
}

@media(max-width:720px) {
    .mobile-menu-btn { display: inline-flex; align-items: center; justify-content: center; margin-left: -10px;}
    .product-title { display: flex; align-items: center; }
    
    /* Override old bottom nav to side drawer */
    .sidebar {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        bottom: 0 !important;
        height: 100vh !important;
        width: 280px !important;
        transform: translateX(-100%);
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        background: var(--paper);
        z-index: 50;
        border-right: 1px solid var(--line);
        padding: 24px !important;
    }
    .sidebar.open {
        transform: translateX(0);
        box-shadow: 10px 0 30px rgba(0,0,0,0.05);
    }
    .sidebar-scrim.open {
        display: block;
    }
    
    .brand { display: flex !important; }
    .device-card { display: flex !important; position: absolute; bottom: 24px; }
    .sidebar nav { flex-direction: column !important; justify-content: flex-start !important; margin-top: 32px !important; }
    .sidebar nav a, .sidebar nav a:not(.active) { display: flex !important; font-size: 15px !important; justify-content: flex-start !important; padding: 14px 16px !important; margin-bottom: 4px; }
    .sidebar nav a .nav-label { display: inline !important; }
}
