.article-card{cursor:pointer;transition:.2s}.article-card:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(59,71,64,.12)}.article-modal{width:min(620px,92vw)}.article-modal p{color:var(--muted);font-size:13px;line-height:1.9}.article-modal h3{font-size:14px;margin-top:19px}.article-modal blockquote{margin:18px 0;background:#f3f0e7;border-left:3px solid var(--gold);padding:12px 15px;color:#6d796f;font-size:12px;line-height:1.8}.backpack-row{display:flex;gap:10px;overflow:auto;padding-bottom:4px}.backpack-item{min-width:112px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:12px;text-align:center}.backpack-item span{display:block;font-size:25px}.backpack-item b{display:block;font-size:11px;margin:8px 0}.backpack-item button{border:0;background:var(--soft-green);color:var(--green);border-radius:8px;padding:5px 8px;font-size:10px}.backpack-item button.equipped{background:var(--green);color:#fff}.wrong-empty{text-align:center;padding:75px 20px;color:var(--muted)}.wrong-empty b{display:block;color:var(--green);font-size:17px;margin-bottom:9px}
.task-manage{border:0;background:transparent;color:var(--muted);font-size:16px}.task-manage:hover{color:var(--green)}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.action-grid .primary-btn{grid-column:1/-1}.danger-btn{border:1px solid #efd2c5;background:#fff5f1;color:#b66d4c;border-radius:10px;padding:10px 13px}.gantt .label{cursor:pointer}.gantt .label:hover{color:var(--green);font-weight:700}
.gantt-cell{transition:.18s}.gantt-cell:hover{background:#f5f7f3}.gantt-cell.drag-over{background:#e7f0eb}.gantt .bar{cursor:grab;transition:.18s}.gantt .bar:hover{transform:scaleY(1.16);filter:saturate(1.2)}.gantt .bar:active{cursor:grabbing}.drag-hint{color:var(--muted);font-size:10px;margin-top:-7px;margin-bottom:12px}
.clock,.note,.radio{position:absolute;z-index:1}.clock{right:35%;top:42px;border:4px solid #d2bd92;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;background:#f4ead3;color:#947b57}.note{left:58%;bottom:35px;background:#f4de86;padding:7px;color:#9d7944;transform:rotate(-4deg)}.radio{right:25%;bottom:34px;background:#ad785e;border-radius:5px;padding:8px 12px;color:#f5e7d6}.empty-results{grid-column:1/-1;padding:45px;text-align:center;color:var(--muted)}
.gantt-range-row{position:relative!important;grid-column:2/-1;min-height:54px!important;padding:0!important;background:repeating-linear-gradient(to right,transparent,transparent calc(8.333% - 1px),var(--line) calc(8.333% - 1px),var(--line) 8.333%)}.gantt-range-bar{position:absolute;top:17px;height:20px;border-radius:20px;background:#cfe2dc;color:var(--green);font-size:9px;padding:3px 9px;white-space:nowrap;overflow:hidden;min-width:9px}.gantt-range-bar.orange{background:#f4d4c5;color:#b66d4c}.gantt-range-bar.purple{background:#ded7e9;color:#756493}.range-label{min-width:0;padding:8px 9px!important}.range-label strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;line-height:1.35}.range-dates{display:flex!important;gap:4px;margin-top:6px!important;white-space:nowrap}.date-chip{display:inline-flex;align-items:center;gap:3px;border-radius:20px;padding:2px 5px 2px 3px;font-size:8px;line-height:1;color:#688078;background:#edf4f1}.date-chip b{display:grid;place-items:center;width:13px;height:13px;border-radius:50%;background:#6f9d90;color:#fff;font-size:7px}.date-end{color:#a06c57;background:#fbefe9}.date-end b{background:#d58a68}
.gantt-range-bar,.range-label{cursor:pointer}.gantt-range-bar:hover{filter:saturate(1.25);transform:translateY(-1px)}.range-label[draggable=true],.gantt-range-row[draggable=true]{cursor:grab}.range-label[draggable=true]:active,.gantt-range-row[draggable=true]:active{cursor:grabbing}.range-label.is-dragging,.gantt-range-row.is-dragging{opacity:.42}.range-label.sort-over,.gantt-range-row.sort-over{background-color:#eef6f2!important;box-shadow:inset 0 0 0 1px rgba(102,143,132,.34)}.range-label.sort-over:before{content:"放到这里";position:absolute;right:7px;top:7px;border-radius:12px;padding:2px 6px;background:var(--green);color:#fff;font-size:7px;letter-spacing:.4px}.range-label:hover{z-index:8}.range-label:hover:after{content:attr(title);position:absolute;left:8px;top:calc(100% - 2px);width:max-content;max-width:280px;padding:8px 10px;border:1px solid rgba(222,226,217,.85);border-radius:9px;background:rgba(255,254,250,.98);box-shadow:0 8px 24px rgba(48,64,57,.13);color:var(--ink);font-size:10px;font-weight:500;line-height:1.55;white-space:normal;pointer-events:none}.modal-backdrop{cursor:pointer}.modal{cursor:default}
.hero-actions{display:flex;gap:9px}.planner-main-actions{padding:5px;border:1px solid rgba(224,226,217,.78);border-radius:15px;background:rgba(255,254,250,.48)}.planner-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;border-radius:11px;padding:0 14px;border:1px solid transparent;background:transparent;color:var(--green);font-size:12px;font-weight:650;letter-spacing:.1px;transition:transform .16s,background .16s,border-color .16s,box-shadow .16s,color .16s}.planner-action:hover{transform:translateY(-1px)}.planner-action:active{transform:translateY(0)}.planner-action-icon{font-size:15px;line-height:1;font-weight:500}.planner-action-secondary{border-color:rgba(222,226,217,.86);background:rgba(255,254,250,.88);color:#718079}.planner-action-secondary:hover{border-color:#cedbd5;background:#fff;color:var(--green)}.planner-action-primary{background:var(--green);color:#fff;box-shadow:0 7px 16px rgba(53,95,85,.16)}.planner-action-primary:hover{background:#2d564d;box-shadow:0 9px 19px rgba(53,95,85,.2)}.planner-action-quiet{height:38px;border-color:#e2e6df;background:#fbfcf9;color:#6b7e77;padding:0 12px}.planner-action-quiet:hover{border-color:#cadbd5;background:#f2f7f4;color:var(--green)}.module-intro{font-size:11px;color:var(--muted);line-height:1.8}.module-list{display:grid;gap:8px;margin:15px 0}.module-item{display:flex;align-items:center;gap:9px;background:#f8f6ef;border-radius:10px;padding:10px}.module-dot{width:11px;height:11px;border-radius:50%}.module-item b{flex:1;font-size:12px}.module-item small{color:var(--muted);font-size:10px}.module-item button{border:0;background:transparent;color:#b66d4c;font-size:11px}.dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:19px;padding-top:15px;border-top:1px solid var(--line)}.danger-link{border:0;background:transparent;color:#bd7658;padding:8px 0;font-size:12px}.danger-link:hover{color:#a75537}.footer-primary{min-width:164px}.module-add{display:grid;grid-template-columns:minmax(0,1fr) 42px auto;gap:9px;align-items:center;padding-top:13px;border-top:1px solid var(--line)}.module-add>input{min-width:0;height:42px;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:#fff}.module-add .primary-btn{height:42px;padding:0 16px;white-space:nowrap}.color-picker{width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;place-items:center;cursor:pointer}.color-picker input{position:absolute;opacity:0;width:1px;height:1px}.color-picker span{width:20px;height:20px;border-radius:50%;background:#668f84;box-shadow:0 0 0 3px #e9efeb}.color-picker:has(input[value="#668f84"]) span{background:#668f84}@media(max-width:720px){.hero-actions{display:grid}.planner-main-actions{grid-template-columns:1fr 1fr;width:100%}.planner-action{width:100%}.module-add{grid-template-columns:minmax(0,1fr) 42px}.module-add .primary-btn{grid-column:1/-1}.footer-primary{min-width:138px}}
.gantt{position:relative}.gantt>.now-marker{position:absolute!important;top:31px!important;bottom:0!important;width:2px;min-height:0!important;padding:0!important;border:0!important;background:#e06e52;z-index:5;pointer-events:none;box-shadow:0 0 10px rgba(224,110,82,.2)}.now-marker:before{content:none}.now-marker span{position:absolute;top:auto;bottom:-9px;left:50%;transform:translate(-50%,100%);white-space:nowrap;background:#d96449;color:#fff;border-radius:10px;padding:3px 7px;font-size:8px;font-weight:700;letter-spacing:.8px;text-transform:lowercase;box-shadow:0 4px 10px rgba(191,91,68,.18)}.now-marker span:after{content:"";position:absolute;left:50%;top:-3px;transform:translateX(-50%);border:3px solid transparent;border-bottom-color:#d96449;border-top:0}
body.modal-open .now-marker{visibility:hidden}
@media(max-width:1180px){.page{padding-left:28px;padding-right:28px}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(270px,.8fr)}.gantt-card{overflow-x:auto}.gantt{min-width:760px}.modal{max-height:88vh;overflow:auto}.desk-layout{grid-template-columns:minmax(0,1.25fr) minmax(235px,.75fr)}}
@media(max-width:820px){.sidebar{width:74px;padding:20px 10px}.brand{padding:0 7px 26px}.brand div,.nav-item:not(.active){font-size:0}.brand-mark{width:38px}.nav-item{justify-content:center;padding:11px}.nav-item span{font-size:19px}.sidebar-bottom .desk-link div,.profile div,.profile i{display:none}.desk-link{justify-content:center;padding:10px}.profile{justify-content:center}main{padding-left:74px}header{padding:0 24px}.page{padding:28px 22px}.dashboard-grid,.focus-layout,.bank-layout,.desk-layout{grid-template-columns:1fr}.side-column{grid-template-columns:1fr 1fr}.planner-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.view-tabs{width:100%;overflow-x:auto;padding-bottom:3px}.view-tabs button{white-space:nowrap}.hero-actions{flex-shrink:0}.article-grid{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.sidebar{width:100%;height:59px;top:auto;padding:6px 8px}.sidebar .brand,.sidebar-bottom{display:none}.sidebar nav{display:flex;justify-content:space-around}.sidebar .nav-item{font-size:0;padding:7px 11px}.sidebar .nav-item span{font-size:20px}main{padding-left:0;padding-bottom:62px}header{padding:0 15px}.header-right{gap:9px}.header-right .points{font-size:10px}.page{padding:23px 14px}.hero{gap:12px;align-items:flex-start;flex-direction:column}.hero h1{font-size:23px;line-height:1.35}.hero-actions{display:flex;width:100%}.hero-actions button{flex:1}.side-column{display:block}.card{border-radius:15px}.timeline-card .section-head{align-items:flex-start;gap:8px;flex-direction:column}.timeline-card .tabs{width:100%;overflow-x:auto}.task{grid-template-columns:49px 12px minmax(0,1fr) auto;gap:7px}.task-content{padding:10px}.planner-toolbar{gap:7px}.date-control{width:100%;justify-content:space-between}.gantt{min-width:820px}.gantt-card{padding:15px}.gantt-range-row{min-height:50px!important}.gantt-range-bar{top:15px}.plan-table{padding:15px}.modal{width:min(94vw,620px);padding:18px;border-radius:16px}.article-modal{width:94vw}.form-grid{gap:8px}.dialog-footer{gap:8px}.footer-primary{min-width:130px}.module-item{padding:9px}.module-item small{font-size:9px}.module-add{grid-template-columns:minmax(0,1fr) 42px}.module-add .primary-btn{grid-column:1/-1;width:100%}.timer-actions{gap:6px;flex-wrap:wrap}.timer-actions button{flex:1;min-width:95px}.article-grid,.shop-grid,.analytics-grid{grid-template-columns:1fr}.full-scene{height:170px}.search input{width:112px}}
.gantt-actions{display:flex;align-items:center;gap:12px}.today-task-btn{display:none}.today-task-btn[style*="inline-flex"]{display:inline-flex!important}.year-detail-modal{width:min(900px,94vw)}.year-stats{border-top:1px solid var(--line);margin-top:19px;padding-top:18px}.record-bars{display:flex;align-items:end;gap:7px;height:76px;margin:8px 0 16px}.record-bars i{flex:1;min-width:11px;border-radius:5px 5px 0 0;background:#b9d2ca}.record-bars i.missed{background:#ead7cf}.record-bars i.empty{background:#edf0eb}.record-table-wrap{overflow:auto}.record-table{width:100%;border-collapse:collapse;min-width:620px}.record-table th,.record-table td{text-align:left;border-bottom:1px solid var(--line);padding:9px 7px;font-size:11px}.record-table th{color:var(--muted);font-weight:500}.record-status{display:inline-block;padding:3px 7px;border-radius:10px;background:var(--soft-green);color:var(--green)}.record-status.missed{background:#f8e9e2;color:#b66d4c}.record-status.waiting{background:#f2eee4;color:#a77c50}@media(max-width:720px){.gantt-actions{display:block}.legend{margin-top:8px}.year-detail-modal{width:94vw}.record-bars{height:58px}}
.pretty-select{position:relative;width:100%;margin-top:6px}.pretty-select>select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important}.pretty-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-size:12px;text-align:left;transition:border-color .16s,box-shadow .16s,background .16s}.pretty-select-trigger:hover{border-color:#cbdad4;background:#fdfefb}.pretty-select.open .pretty-select-trigger{border-color:#95b7ad;box-shadow:0 0 0 3px rgba(102,143,132,.12)}.pretty-select-arrow{width:8px;height:8px;border-right:1.5px solid #6f827b;border-bottom:1.5px solid #6f827b;transform:rotate(45deg) translateY(-2px);transition:transform .16s}.pretty-select.open .pretty-select-arrow{transform:rotate(225deg) translate(-2px,-2px)}.pretty-select-menu{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);display:none;max-height:220px;overflow:auto;padding:5px;border:1px solid rgba(220,225,217,.92);border-radius:11px;background:rgba(255,254,250,.985);box-shadow:0 14px 32px rgba(40,58,51,.15)}.pretty-select.open .pretty-select-menu{display:grid;gap:2px}.pretty-select-option{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:34px;border:0;border-radius:7px;padding:0 9px;background:transparent;color:#53645e;font-size:12px;text-align:left}.pretty-select-option:hover{background:#eef5f2;color:var(--green)}.pretty-select-option.selected{background:#e5f0ec;color:var(--green);font-weight:700}.pretty-select-option.selected:after{content:"✓";font-size:11px}.focus-top .pretty-select{display:inline-block;width:min(300px,58vw);margin:0}.focus-top .pretty-select-trigger{min-height:36px;background:#fbfcfa}.dark .pretty-select-trigger{border-color:#44534e;background:#2d3935;color:#eef2ef}.dark .pretty-select-menu{border-color:#44534e;background:#2d3935}.dark .pretty-select-option{color:#c7d1cd}.dark .pretty-select-option:hover,.dark .pretty-select-option.selected{background:#3b4d47;color:#fff}
:root{--layer-content:1;--layer-header:20;--layer-floating:35;--layer-modal:80;--layer-modal-menu:95;--layer-toast:110}header{position:sticky;top:0;z-index:var(--layer-header);backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(222,224,216,.72)}.modal-backdrop{z-index:var(--layer-modal)!important}.modal-backdrop .pretty-select-menu{z-index:var(--layer-modal-menu)}.toast{z-index:var(--layer-toast)}.header-spacer{flex:1}.countdown-wrap{position:relative}.countdown{display:flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:18px;padding:7px 9px;background:transparent;transition:background .16s,border-color .16s}.countdown:hover,.countdown-wrap.open .countdown{border-color:#e0e5dd;background:#fffefa}.countdown em{color:#90a09a;font-size:11px;font-style:normal}.countdown-panel{position:absolute;right:0;top:calc(100% + 11px);z-index:var(--layer-floating);display:none;width:330px;padding:16px;border:1px solid rgba(222,226,217,.9);border-radius:16px;background:rgba(255,254,250,.985);box-shadow:0 18px 44px rgba(47,61,56,.16)}.countdown-wrap.open .countdown-panel{display:block}.countdown-panel-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px}.countdown-close{border:0;background:transparent;color:#81908b;font-size:20px}.countdown-list{display:grid;gap:7px;max-height:250px;overflow:auto}.countdown-item{display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:center;padding:10px;border-radius:11px;background:#f7f6f0}.countdown-item b{display:block;font-size:12px}.countdown-item small{display:block;margin-top:3px;color:var(--muted);font-size:9px}.countdown-days{border-radius:16px;padding:4px 7px;background:#e8f1ed;color:var(--green);font-size:10px;font-weight:700;white-space:nowrap}.countdown-days.soon{background:#fbebe4;color:#c06e4f}.countdown-delete{border:0;background:transparent;color:#b0bab6;font-size:15px}.countdown-delete:hover{color:#be7254}.countdown-empty{padding:14px 4px;color:var(--muted);font-size:11px}.countdown-form{display:grid;grid-template-columns:minmax(0,1fr) 114px auto;gap:6px;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}.countdown-form input{min-width:0;height:34px;border:1px solid var(--line);border-radius:8px;padding:0 8px;background:#fff;color:var(--ink);font-size:10px}.countdown-form button{border:0;border-radius:8px;padding:0 8px;background:var(--green);color:#fff;font-size:10px;font-weight:700}.dark .countdown:hover,.dark .countdown-wrap.open .countdown,.dark .countdown-panel{border-color:#41504c;background:#24322e}.dark .countdown-item{background:#2e3d38}.dark .countdown-form input{border-color:#44534e;background:#2d3935;color:#eef2ef}@media(max-width:720px){.countdown-panel{position:fixed;left:12px;right:12px;top:64px;width:auto}.countdown-form{grid-template-columns:1fr 108px}.countdown-form button{grid-column:1/-1;height:34px}.countdown span{font-size:10px}}
.daily-table-row{cursor:pointer;transition:.16s}.daily-table-row:hover{background:#f7faf7}
#planner{width:100%;max-width:none;padding:18px 20px 48px}.planner-toolbar{gap:14px;margin-bottom:13px}.planner-toolbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}.date-control{height:46px;gap:3px;padding:4px;border:1px solid rgba(224,226,217,.78);border-radius:13px;background:rgba(255,254,250,.5)}.date-control button{display:grid;width:32px;height:36px;padding:0;place-items:center;border-radius:9px;font-size:20px;line-height:1;transition:background .16s,color .16s}.date-control button:hover{background:#edf4f1}.date-control b{display:flex;min-width:132px;height:36px;align-items:center;justify-content:center;color:#718079;font-size:12px;line-height:1}.planner-main-actions{display:flex;flex-shrink:0;padding:4px;border-radius:13px}.planner-action{height:38px;padding:0 12px}.gantt-card>.section-head{margin-bottom:8px}.gantt-card .drag-hint{margin-top:0}.gantt-empty{display:flex;min-height:170px!important;padding:30px!important;flex-direction:column;align-items:center;justify-content:center;gap:7px;border-top:1px solid var(--line);background:linear-gradient(180deg,#fffefa,#faf9f5);color:var(--muted);text-align:center}.gantt-empty b{color:#718079;font-size:13px}.gantt-empty span{font-size:10px}@media(max-width:820px){#planner{padding:16px 14px 70px}.planner-toolbar-right{width:100%;justify-content:space-between;margin-left:0}.planner-main-actions{width:auto}.planner-action{width:auto!important}}@media(max-width:560px){.planner-toolbar-right{align-items:stretch;flex-direction:column;gap:8px}.date-control{width:100%}.planner-main-actions{display:grid;width:100%}.planner-action{width:100%!important}}
.gantt.week-calendar-mode{display:block;min-width:880px}.week-parent-summary{display:flex;align-items:center;gap:16px;margin:2px 0 13px;padding:11px 13px;border:1px solid #ecece4;border-radius:12px;background:#faf9f5}.week-parent-summary h3{margin:0;font-size:13px;white-space:nowrap}.week-parent-summary .eyebrow{margin-bottom:3px}.week-parent-list{display:flex;gap:7px;overflow:auto;padding:2px}.week-parent-chip{display:flex;align-items:center;gap:7px;min-width:190px;border:1px solid #e1e5de;border-radius:9px;padding:7px 9px;background:#fffefa;color:var(--ink);text-align:left;transition:.15s}.week-parent-chip:hover{border-color:#cddbd6;transform:translateY(-1px)}.week-parent-chip i{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.week-parent-chip b,.week-parent-chip small{display:block;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-parent-chip b{font-size:10px}.week-parent-chip small,.week-parent-empty{margin-top:3px;color:var(--muted);font-size:9px}.week-calendar{display:grid;grid-template-columns:50px minmax(0,1fr);height:706px;margin-top:4px;padding-bottom:16px;border-top:1px solid var(--line);overflow:visible}.week-time-axis{position:relative;margin-top:38px;border-right:1px solid var(--line);color:#96a19d;font-size:9px}.week-time-axis span{position:absolute;right:8px;transform:translateY(-50%)}.week-time-axis span:last-child{transform:translateY(-100%)}.week-day-grid{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr))}.week-day-column{min-width:0;border-right:1px solid var(--line)}.week-day-column header{height:38px;display:flex;align-items:center;justify-content:center;gap:5px;border-bottom:1px solid var(--line);background:#fbfaf6;color:#75847f}.week-day-column header b{font-size:11px}.week-day-column header small{font-size:9px}.week-day-column.is-today header{background:#edeff5;color:#5f6980}.week-day-body{position:relative;height:652px;background:repeating-linear-gradient(to bottom,transparent,transparent calc(8.333% - 1px),var(--line) calc(8.333% - 1px),var(--line) 8.333%)}.week-day-column.is-today .week-day-body{background-color:rgba(224,227,236,.34)}.week-event{position:absolute;z-index:2;min-height:22px;overflow:hidden;border:0;border-left:3px solid var(--event-color);border-radius:6px;padding:5px 6px;background:color-mix(in srgb,var(--event-color) 18%,#fff);color:#48615a;text-align:left;box-shadow:0 3px 8px rgba(70,92,84,.08);transition:transform .15s,box-shadow .15s}.week-event:hover{z-index:3;transform:translateY(-1px);box-shadow:0 7px 15px rgba(70,92,84,.14)}.week-event b,.week-event small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-event b{font-size:9px}.week-event small{margin-top:3px;color:#72847e;font-size:8px}@media(max-width:720px){.gantt.week-calendar-mode{min-width:790px}.week-parent-summary{align-items:flex-start;flex-direction:column}.week-calendar{height:636px}.week-day-body{height:582px}}
.pretty-date{position:relative;width:100%;margin-top:6px}.pretty-date>input[type=date]{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important}.pretty-date-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#788781;font-size:12px;text-align:left;transition:border-color .16s,box-shadow .16s,background .16s}.pretty-date.has-value .pretty-date-trigger{color:var(--ink)}.pretty-date-trigger:hover{border-color:#cbdad4;background:#fdfefb}.pretty-date.open .pretty-date-trigger{border-color:#95b7ad;box-shadow:0 0 0 3px rgba(102,143,132,.12)}.pretty-date-icon{position:relative;width:15px;height:15px;border:1.5px solid #789088;border-radius:4px}.pretty-date-icon:before{content:"";position:absolute;left:2px;right:2px;top:4px;border-top:1.5px solid #789088}.pretty-date-icon:after{content:"";position:absolute;left:3px;right:3px;top:-3px;height:4px;border-left:1.5px solid #789088;border-right:1.5px solid #789088}.pretty-date-panel{position:absolute;z-index:var(--layer-modal-menu);left:0;top:calc(100% + 7px);display:none;width:286px;padding:11px;border:1px solid rgba(220,225,217,.96);border-radius:14px;background:rgba(255,254,250,.99);box-shadow:0 18px 38px rgba(40,58,51,.17)}.pretty-date.open .pretty-date-panel{display:block}.pretty-date-panel header,.pretty-date-panel footer{display:flex;align-items:center;justify-content:space-between}.pretty-date-panel header{padding:1px 2px 10px}.pretty-date-month{color:var(--green);font-size:12px;letter-spacing:.3px}.pretty-date-nav{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:8px;background:#f4f6f2;color:#6f827b;font-size:20px;line-height:1}.pretty-date-nav:hover{background:#e9f1ed;color:var(--green)}.pretty-date-week,.pretty-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.pretty-date-week{padding:5px 0;color:#98a49f;font-size:9px;text-align:center}.pretty-date-day{display:grid;place-items:center;aspect-ratio:1;border:0;border-radius:8px;background:transparent;color:#53645e;font-size:11px}.pretty-date-day:hover{background:#eef5f2;color:var(--green)}.pretty-date-day.muted{color:#bdc5c1}.pretty-date-day.today{box-shadow:inset 0 0 0 1px #b9d4cb;color:var(--green);font-weight:700}.pretty-date-day.selected{background:var(--green);box-shadow:none;color:#fff;font-weight:700}.pretty-date-panel footer{margin-top:8px;padding-top:9px;border-top:1px solid var(--line)}.pretty-date-panel footer button{border:0;background:transparent;color:#789088;font-size:10px}.pretty-date-panel footer button:hover{color:var(--green)}.countdown-form .pretty-date{margin:0}.countdown-form .pretty-date-trigger{min-height:34px;padding:0 8px;border-radius:8px;font-size:10px}.countdown-form .pretty-date-icon{width:13px;height:13px}.countdown-form .pretty-date-panel{left:auto;right:0}.dark .pretty-date-trigger,.dark .pretty-date-panel{border-color:#44534e;background:#2d3935;color:#eef2ef}.dark .pretty-date-nav{background:#35453f;color:#c7d1cd}.dark .pretty-date-day{color:#c7d1cd}.dark .pretty-date-day:hover{background:#3b4d47;color:#fff}@media(max-width:560px){.pretty-date-panel{width:min(286px,82vw)}.form-grid .pretty-date-panel{left:auto;right:0}.form-grid label:first-child .pretty-date-panel{left:0;right:auto}}
.pretty-color{position:relative}.pretty-color .color-picker{position:relative;width:42px;height:42px;border-color:#dce3dd;background:#fffefa;transition:border-color .16s,box-shadow .16s,background .16s}.pretty-color .color-picker:hover,.pretty-color.open .color-picker{border-color:#b8ccc5;background:#fff}.pretty-color.open .color-picker{box-shadow:0 0 0 3px rgba(102,143,132,.12)}.pretty-color .color-picker span{width:18px;height:18px;background:var(--pretty-color)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--pretty-color) 20%,#fff)}.pretty-color-arrow{position:absolute;right:4px;bottom:4px;width:5px;height:5px;border-right:1px solid #91a09b;border-bottom:1px solid #91a09b;transform:rotate(45deg)}.pretty-color-panel{position:absolute;z-index:var(--layer-modal-menu);right:0;bottom:calc(100% + 8px);display:none;width:266px;padding:13px;border:1px solid rgba(220,225,217,.96);border-radius:14px;background:rgba(255,254,250,.99);box-shadow:0 18px 38px rgba(40,58,51,.17)}.pretty-color.open .pretty-color-panel{display:block}.pretty-color-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:11px}.pretty-color-head b,.pretty-color-head small{display:block}.pretty-color-head b{color:var(--ink);font-size:12px}.pretty-color-head small{margin-top:3px;color:var(--muted);font-size:9px}.pretty-color-preview{width:28px;height:28px;flex:0 0 auto;border-radius:50%;background:var(--pretty-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--pretty-color) 18%,#fff)}.pretty-color-swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:7px;padding:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pretty-color-swatch{position:relative;aspect-ratio:1;border:0;border-radius:50%;background:var(--swatch);transition:transform .14s,box-shadow .14s}.pretty-color-swatch:hover{transform:translateY(-2px);box-shadow:0 5px 10px color-mix(in srgb,var(--swatch) 28%,transparent)}.pretty-color-swatch.selected:after{content:"";position:absolute;inset:-4px;border:1px solid var(--swatch);border-radius:50%}.pretty-color-custom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px;color:#7a8984;font-size:10px}.pretty-color-hex{width:92px!important;height:30px!important;border:1px solid var(--line)!important;border-radius:8px!important;padding:0 8px!important;background:#fff!important;color:var(--ink)!important;font-size:10px!important;text-transform:uppercase}.pretty-color-native{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:32px;margin-top:10px;border:1px solid #dde5df;border-radius:8px;background:#f8faf7;color:#71827c;font-size:10px;font-weight:650;transition:background .15s,border-color .15s,color .15s}.pretty-color-native:hover{border-color:#c5d8d1;background:#eef5f2;color:var(--green)}.pretty-color-native i{width:10px;height:10px;border:1.5px solid currentColor;border-radius:50%;box-shadow:inset 0 0 0 2px #f8faf7}.dark .pretty-color .color-picker,.dark .pretty-color-panel,.dark .pretty-color-hex{border-color:#44534e!important;background:#2d3935!important;color:#eef2ef!important}.dark .pretty-color-native{border-color:#44534e;background:#35453f;color:#c7d1cd}@media(max-width:560px){.pretty-color-panel{right:-54px;width:252px}.pretty-color-swatches{gap:6px}}
.countdown{min-height:36px;line-height:1;gap:9px;padding:0 10px!important;border-color:rgba(214,221,215,.72)!important;background:rgba(255,254,250,.34)}.countdown:hover,.countdown-wrap.open .countdown{border-color:#d2ddd7!important;background:#fffefa}.countdown-dot{display:block!important;width:7px!important;height:7px!important;flex:0 0 auto;margin:0!important;border-radius:50%;background:var(--orange)}.countdown span{display:flex;align-items:center;gap:3px;line-height:1}.countdown b{line-height:1}.pretty-select-arrow,.ui-chevron{display:block;width:7px;height:7px;flex:0 0 auto;border-right:1.5px solid #789088;border-bottom:1.5px solid #789088;transform:rotate(45deg)!important;transform-origin:center;transition:transform .16s,border-color .16s}.pretty-select.open .pretty-select-arrow,.countdown-wrap.open .ui-chevron{transform:rotate(225deg)!important}.pretty-select-trigger:hover .pretty-select-arrow,.countdown:hover .ui-chevron{border-color:var(--green)}.pretty-color-arrow{right:5px;bottom:5px;width:6px;height:6px;border-width:0 1.5px 1.5px 0;border-style:solid;border-color:#789088;transform:rotate(45deg)}
.countdown-form .pretty-date-trigger{border:1px solid var(--line)!important;background:#fff!important;color:#788781!important;font-weight:500!important}.countdown-form .pretty-date.has-value .pretty-date-trigger{color:var(--ink)!important}.countdown-form .pretty-date-trigger:hover{border-color:#cbdad4!important;background:#f8fbf9!important;color:#5f746d!important}.countdown-form .pretty-date-trigger:hover .pretty-date-icon{border-color:#789088}.field-attention{border-color:#d58a68!important;box-shadow:0 0 0 3px rgba(213,138,104,.14)!important;animation:fieldAttention .32s ease}@keyframes fieldAttention{0%,100%{transform:translateX(0)}35%{transform:translateX(-3px)}70%{transform:translateX(3px)}}.dark .countdown-form .pretty-date-trigger{border-color:#44534e!important;background:#2d3935!important;color:#c7d1cd!important}
.today-time-axis{position:relative;grid-column:2/-1;min-height:39px!important;border-top:0!important;padding:0!important;color:var(--muted)}.today-time-axis span{position:absolute;top:11px;transform:translateX(-50%);white-space:nowrap}.today-time-axis span:first-child{transform:none}.today-time-axis span:last-child{transform:translateX(-100%)}.today-axis-mode .gantt-range-row{background:repeating-linear-gradient(to right,transparent,transparent calc(8.333% - 1px),var(--line) calc(8.333% - 1px),var(--line) 8.333%)}
.gantt>.week-parent-summary{grid-column:1/-1}.week-parent-summary{gap:13px;margin:2px 0 14px;padding:10px 11px;border-color:#e8ebe5;border-radius:11px;background:linear-gradient(90deg,#faf9f4,#fffefa)}.week-parent-title{display:grid;min-width:145px;padding:1px 4px}.week-parent-title .eyebrow{margin-bottom:2px;font-size:8px}.week-parent-title h3{font-size:12px}.week-parent-title>small{margin-top:4px;color:#9aa49f;font-size:9px}.week-parent-list{gap:6px}.week-parent-chip{gap:8px;min-width:205px;max-width:260px;border-color:#e4e7e1;border-radius:9px;padding:7px 8px;background:rgba(255,255,252,.82);box-shadow:0 2px 7px rgba(63,79,72,.025)}.week-parent-chip:hover{border-color:#c8d8d2;background:#fff;box-shadow:0 6px 13px rgba(63,79,72,.07)}.week-parent-chip i{width:7px;height:7px}.week-parent-chip span{min-width:0;flex:1}.week-parent-chip b,.week-parent-chip small{max-width:180px}.week-parent-chip b{font-size:10px;font-weight:650}.week-parent-chip em{color:#a3afaa;font-size:9px;font-style:normal;opacity:0;transition:opacity .15s}.week-parent-chip:hover em{opacity:1}.week-parent-empty{padding:7px 2px}@media(max-width:720px){.week-parent-title{min-width:0}.week-parent-chip{min-width:190px}.week-parent-summary{gap:8px}}
.week-parent-summary{gap:20px;padding:14px 16px}.week-parent-title{min-width:162px;padding:2px 5px}.week-parent-list{gap:10px;padding:3px 2px}.week-parent-chip{gap:10px;min-width:220px;padding:9px 10px}.week-parent-chip small{margin-top:4px}
.nav-icon{display:grid!important;place-items:center;width:20px!important;height:20px!important;flex:0 0 20px;color:#789088;font-size:0!important}.nav-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nav-item:hover .nav-icon,.nav-item.active .nav-icon{color:var(--green)}.desk-link .nav-icon{width:22px!important;height:22px!important;flex-basis:22px;color:#b5893f}.desk-link .nav-icon svg{width:22px;height:22px}.desk-link:hover .nav-icon{color:#9d742e}@media(max-width:820px){.nav-icon{width:21px!important;height:21px!important}.nav-icon svg{width:21px;height:21px}}@media(max-width:560px){.sidebar .nav-icon{width:20px!important;height:20px!important}.sidebar .nav-icon svg{width:20px;height:20px}}
.legend{display:flex;max-width:520px;flex-wrap:wrap;justify-content:flex-end;gap:6px 11px}.legend span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.legend i{margin-right:0!important;flex:0 0 auto}
.pretty-time{position:relative;width:100%;margin-top:6px}.pretty-time>input[type=time]{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important}.pretty-time-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#788781;font-size:12px;text-align:left;transition:border-color .16s,box-shadow .16s,background .16s}.pretty-time.has-value .pretty-time-trigger{color:var(--ink)}.pretty-time-trigger:hover{border-color:#cbdad4;background:#fdfefb}.pretty-time.open .pretty-time-trigger{border-color:#95b7ad;box-shadow:0 0 0 3px rgba(102,143,132,.12)}.pretty-time-icon{position:relative;width:16px;height:16px;border:1.5px solid #789088;border-radius:50%}.pretty-time-icon:before,.pretty-time-icon:after{content:"";position:absolute;left:50%;top:50%;width:1.5px;border-radius:2px;background:#789088;transform-origin:50% 0}.pretty-time-icon:before{height:5px;transform:translate(-50%,-1px) rotate(180deg)}.pretty-time-icon:after{height:4px;transform:translate(-50%,-1px) rotate(125deg)}.pretty-time-panel{position:absolute;z-index:var(--layer-modal-menu);left:0;top:calc(100% + 7px);display:none;width:250px;padding:12px;border:1px solid rgba(220,225,217,.96);border-radius:14px;background:rgba(255,254,250,.99);box-shadow:0 18px 38px rgba(40,58,51,.17)}.pretty-time.open .pretty-time-panel{display:block}.pretty-time-panel header,.pretty-time-panel footer{display:flex;align-items:center;justify-content:space-between}.pretty-time-panel header{padding:1px 2px 11px;border-bottom:1px solid var(--line)}.pretty-time-panel header b,.pretty-time-panel header small{display:block}.pretty-time-panel header b{color:var(--ink);font-size:12px}.pretty-time-panel header small{margin-top:3px;color:var(--muted);font-size:9px}.pretty-time-preview{border-radius:15px;padding:5px 8px;background:#e8f1ed;color:var(--green);font-size:12px;font-weight:700;letter-spacing:.5px}.pretty-time-columns{display:grid;grid-template-columns:1fr 14px 1fr;gap:5px;padding:10px 0}.pretty-time-columns>div{min-width:0}.pretty-time-columns em{display:block;padding:0 0 5px 4px;color:#a0aba7;font-size:9px;font-style:normal}.pretty-time-list{display:grid;gap:2px;height:178px;overflow:auto;padding:3px;border-radius:9px;background:#f8f8f4;scrollbar-width:thin}.pretty-time-option{min-height:30px;border:0;border-radius:7px;background:transparent;color:#667771;font-size:11px;transition:background .14s,color .14s}.pretty-time-option:hover{background:#edf4f1;color:var(--green)}.pretty-time-option.selected{background:var(--green);color:#fff;font-weight:700;box-shadow:0 3px 7px rgba(53,95,85,.14)}.pretty-time-separator{display:grid;place-items:center;padding-top:22px;color:#9aaba5;font-size:16px;font-style:normal}.pretty-time-panel footer{gap:8px;padding-top:10px;border-top:1px solid var(--line)}.pretty-time-panel footer button{height:32px;border-radius:8px;padding:0 10px;font-size:10px;font-weight:650}.pretty-time-now{border:1px solid #e0e5df;background:#fafbf8;color:#758680}.pretty-time-now:hover{border-color:#cadbd5;background:#f0f6f3;color:var(--green)}.pretty-time-confirm{border:0;background:var(--green);color:#fff}.pretty-time-confirm:hover{background:#2d564d}.dark .pretty-time-trigger,.dark .pretty-time-panel{border-color:#44534e;background:#2d3935;color:#eef2ef}.dark .pretty-time-list{background:#35453f}.dark .pretty-time-option{color:#c7d1cd}.dark .pretty-time-option:hover{background:#3b4d47;color:#fff}.dark .pretty-time-now{border-color:#44534e;background:#35453f;color:#c7d1cd}@media(max-width:560px){.pretty-time-panel{width:min(250px,78vw)}.form-grid label:last-child .pretty-time-panel{left:auto;right:0}}
.modal-backdrop{overflow:auto;padding:22px 12px}.modal:has(.pretty-date.open),.modal:has(.pretty-time.open),.modal:has(.pretty-select.open),.modal:has(.pretty-color.open){overflow:visible!important}.pretty-date.drop-up .pretty-date-panel,.pretty-time.drop-up .pretty-time-panel,.pretty-select.drop-up .pretty-select-menu{top:auto;bottom:calc(100% + 7px)}.pretty-time-list{overscroll-behavior:contain}.pretty-select-menu{overscroll-behavior:contain}
.module-item>.pretty-color{flex:0 0 24px}.pretty-color .module-color-control{width:24px;height:24px;border:0;background:transparent}.pretty-color .module-color-control:hover,.pretty-color.open .module-color-control{border:0;background:rgba(102,143,132,.08);box-shadow:none}.pretty-color .module-color-control span{width:12px;height:12px;box-shadow:0 0 0 3px color-mix(in srgb,var(--pretty-color) 16%,#fff)}.pretty-color .module-color-control .pretty-color-arrow{display:none}.module-item>.pretty-color .pretty-color-panel{right:auto;left:0}
.pretty-select-menu,.pretty-time-list,.countdown-list,.week-parent-list,.record-table-wrap,.gantt-card,.view-tabs,.backpack-row{scrollbar-width:thin;scrollbar-color:#b8c7c2 transparent}.pretty-select-menu::-webkit-scrollbar,.pretty-time-list::-webkit-scrollbar,.countdown-list::-webkit-scrollbar,.week-parent-list::-webkit-scrollbar,.record-table-wrap::-webkit-scrollbar,.gantt-card::-webkit-scrollbar,.view-tabs::-webkit-scrollbar,.backpack-row::-webkit-scrollbar{width:7px;height:7px}.pretty-select-menu::-webkit-scrollbar-track,.pretty-time-list::-webkit-scrollbar-track,.countdown-list::-webkit-scrollbar-track,.week-parent-list::-webkit-scrollbar-track,.record-table-wrap::-webkit-scrollbar-track,.gantt-card::-webkit-scrollbar-track,.view-tabs::-webkit-scrollbar-track,.backpack-row::-webkit-scrollbar-track{margin:4px;border-radius:99px;background:rgba(226,231,226,.48)}.pretty-select-menu::-webkit-scrollbar-thumb,.pretty-time-list::-webkit-scrollbar-thumb,.countdown-list::-webkit-scrollbar-thumb,.week-parent-list::-webkit-scrollbar-thumb,.record-table-wrap::-webkit-scrollbar-thumb,.gantt-card::-webkit-scrollbar-thumb,.view-tabs::-webkit-scrollbar-thumb,.backpack-row::-webkit-scrollbar-thumb{min-height:34px;border:2px solid transparent;border-radius:99px;background:#b8c7c2;background-clip:padding-box}.pretty-select-menu::-webkit-scrollbar-thumb:hover,.pretty-time-list::-webkit-scrollbar-thumb:hover,.countdown-list::-webkit-scrollbar-thumb:hover,.week-parent-list::-webkit-scrollbar-thumb:hover,.record-table-wrap::-webkit-scrollbar-thumb:hover,.gantt-card::-webkit-scrollbar-thumb:hover,.view-tabs::-webkit-scrollbar-thumb:hover,.backpack-row::-webkit-scrollbar-thumb:hover{background:#789b91;background-clip:padding-box}.pretty-select-menu,.pretty-time-list{scrollbar-gutter:stable}
.modal textarea{width:100%;min-height:76px;margin-top:6px;padding:10px 12px;resize:vertical;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;line-height:1.65}.modal textarea:focus{border-color:#95b7ad;outline:0;box-shadow:0 0 0 3px rgba(102,143,132,.12)}.status.active{background:#e8f1ed;color:#47776c}.plan-note{max-width:260px;overflow:hidden;color:#718079;text-overflow:ellipsis;white-space:nowrap}.plan-table table{min-width:820px}.dark .modal textarea{border-color:#44534e;background:#2d3935;color:#eef2ef}
.capture-plan .sidebar{display:none}.capture-plan main{padding-left:0}.capture-plan .page{max-width:1720px;padding-top:20px}.capture-plan header{height:58px}
.page{width:100%;max-width:none;padding-left:20px;padding-right:20px}.page>.hero{margin-bottom:18px}.page>.hero h1{margin-bottom:5px}.focus-main{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 54%,rgba(222,239,234,.68),rgba(255,254,250,.96) 48%,#fffefa 76%)}.focus-main:before,.focus-main:after{content:"";position:absolute;border:1px solid rgba(102,143,132,.1);border-radius:50%;pointer-events:none}.focus-main:before{width:430px;height:430px;left:calc(50% - 215px);top:74px}.focus-main:after{width:350px;height:350px;left:calc(50% - 175px);top:114px}.focus-top,.timer-actions,.focus-note{position:relative;z-index:3}.timer-ring{position:relative;z-index:2;width:292px;height:292px;margin:34px auto 30px;background:repeating-conic-gradient(from -1deg,#6e9b91 0 1.1deg,transparent 1.1deg 7.5deg);box-shadow:0 0 0 1px rgba(102,143,132,.12),0 0 42px rgba(82,142,131,.18)}.timer-ring:before{content:"";position:absolute;inset:13px;border-radius:50%;background:conic-gradient(from 0deg,var(--green) 0 72%,rgba(205,220,214,.52) 72% 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.86),0 0 26px rgba(82,142,131,.2)}.timer-ring:after{content:"";position:absolute;inset:29px;border:1px solid rgba(114,151,142,.3);border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(225,238,234,.84));box-shadow:inset 0 0 24px rgba(255,255,255,.76),0 12px 30px rgba(58,94,86,.1)}.timer-ring>div{position:relative;z-index:2}.timer-ring b{color:#24443d;font-family:"DM Serif Display","Noto Sans SC",serif;font-size:62px;letter-spacing:3px;text-shadow:0 2px 0 rgba(255,255,255,.8)}.timer-ring small{margin-top:5px;color:#719087;font-size:11px;letter-spacing:1.6px}.timer-btn{min-width:138px;border:1px solid rgba(255,255,255,.56);box-shadow:0 9px 22px rgba(53,95,85,.24)}.focus-main .soft-btn{background:rgba(255,254,250,.72);backdrop-filter:blur(8px)}@media(max-width:820px){.page{padding-left:14px;padding-right:14px}.focus-main:before{width:360px;height:360px;left:calc(50% - 180px)}.focus-main:after{width:306px;height:306px;left:calc(50% - 153px)}}@media(max-width:560px){.timer-ring{width:232px;height:232px;margin:25px auto}.timer-ring b{font-size:50px}.focus-main:before{width:290px;height:290px;left:calc(50% - 145px);top:90px}.focus-main:after{width:258px;height:258px;left:calc(50% - 129px);top:106px}.timer-actions{gap:6px}.timer-btn{min-width:112px}}
body.rewards-hidden .header-right .points,body.rewards-hidden #themeToggle,body.rewards-hidden #deskTop,body.rewards-hidden #deskNav,body.rewards-hidden .desk-card,body.rewards-hidden .desk-enter,body.rewards-hidden #focusPoints,body.rewards-hidden #deskPoints,body.rewards-hidden .big-points{display:none!important}body.rewards-hidden .sidebar-bottom{margin-top:auto}body.rewards-hidden .profile{border-top:0}body.rewards-hidden .header-right{gap:14px}

.brand{position:relative;isolation:isolate;gap:12px;padding:9px 9px 25px;margin:0 0 8px;border-radius:22px}.brand:before{content:"";position:absolute;inset:0 0 13px;border-radius:22px;background:linear-gradient(135deg,rgba(231,240,235,.92),rgba(255,254,250,.76) 58%,rgba(242,238,227,.76));border:1px solid rgba(217,225,219,.68);box-shadow:0 14px 32px rgba(53,95,85,.07);opacity:.88;z-index:-2}.brand:after{content:"";position:absolute;left:18px;top:18px;width:58px;height:42px;border-radius:50%;background:rgba(132,166,151,.18);filter:blur(15px);z-index:-1}.brand-figure{position:relative;z-index:1;display:grid;place-items:center;width:54px;height:54px;flex:0 0 54px;overflow:hidden;border-radius:19px;background:radial-gradient(circle at 48% 38%,#fffaf0 0 46%,#eef2e8 78%);border:1px solid rgba(255,255,255,.92);box-shadow:inset 0 0 0 1px rgba(93,117,104,.08),0 12px 25px rgba(53,95,85,.13)}.brand-figure img{width:84px;height:84px;object-fit:cover;object-position:center 58%;transform:translate(-11px,-8px) scale(1.02);filter:saturate(.96) contrast(.98)}.brand-copy{position:relative;z-index:1;min-width:0}.brand-copy b{display:block;font-size:17px;letter-spacing:2px;color:#25352f;line-height:1.18}.brand-copy small{display:block;margin-top:5px;color:#7d8984;font-size:10px;letter-spacing:.45px}.brand .brand-mark{display:none}

@media(max-width:820px){.brand{justify-content:center;padding:6px 0 22px;margin-bottom:2px}.brand:before,.brand:after,.brand-copy{display:none}.brand-figure{width:43px;height:43px;flex-basis:43px;border-radius:16px}.brand-figure img{width:66px;height:66px;transform:translate(-9px,-7px) scale(1.02)}}

/* Essay bank compact entrance */
#bank{padding-top:20px!important}
#bank .bank-page-shell{gap:14px!important}
#bank .bank-hero{display:none!important}
.bank-compact-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 8px}
#bank .bank-mode-tabs{margin:0!important}
#bank .bank-mode-tabs button[data-bank-tab="practice"],#bank .bank-mode-tabs button[data-bank-tab="wrong"]{display:none!important}
#bank .essay-search{width:min(360px,100%);height:40px}
#bank .essay-filter-card{align-items:center!important;gap:18px!important;margin:0 0 18px!important;padding:16px 18px!important;border-radius:20px!important;box-shadow:0 12px 30px rgba(55,68,62,.045)!important}
#bank .essay-filter-summary{padding:3px 6px 3px 0!important}
#bank .essay-filter-label{display:none!important}
#bank .essay-filter-summary b{font-size:17px!important;line-height:1.2}
#bank .essay-filter-summary small{margin-top:6px}
#bank .essay-filter-controls{gap:12px!important}
#bank .essay-filter-card .pretty-select-trigger,#bank .essay-filter-card select{min-height:40px!important;height:40px!important;border-radius:12px!important}
#bank .essay-paper-grid{gap:16px!important}
@media(max-width:720px){.bank-compact-toolbar{flex-direction:column;align-items:stretch;gap:10px}#bank .bank-mode-tabs{width:max-content;max-width:100%}#bank .essay-search{width:100%}#bank .essay-filter-card{padding:16px!important;margin-bottom:16px!important}}

/* Today notebook */
#dashboard{width:100%;max-width:none;padding:18px 20px 48px}
.dashboard-compat{display:none!important}
.today-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.today-date-block{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 10px;border:1px solid rgba(224,226,217,.74);border-radius:16px;background:rgba(255,254,250,.62);box-shadow:0 12px 30px rgba(55,68,62,.045)}
.today-date-copy{display:flex;align-items:center;gap:10px;min-width:192px;justify-content:center}
.today-date-block span{color:#7d8984;font-size:12px;font-weight:800;line-height:1}
.today-date-block b{color:var(--green);font-size:18px;letter-spacing:.3px;line-height:1}
.today-date-nav{position:relative;display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid rgba(214,221,214,.9);border-radius:50%;background:rgba(255,254,250,.72);color:#6f8179;box-shadow:0 6px 16px rgba(55,68,62,.04)}
.today-date-nav:before{content:"";width:7px;height:7px;border-top:2px solid currentColor;border-left:2px solid currentColor;transform:translateX(1px) rotate(-45deg)}
#todayNotebookNext:before{transform:translateX(-1px) rotate(135deg)}
.today-date-nav:hover{background:var(--soft-green);border-color:#c7d8cf;color:var(--green)}
.today-back-today{height:40px;padding:0 18px;border:1px solid rgba(224,226,217,.74);border-radius:14px;background:rgba(255,254,250,.62);color:#c26852;font-size:13px;font-weight:800;box-shadow:0 12px 30px rgba(55,68,62,.04)}
.today-back-today:hover{border-color:#e0c7bd;background:#fff9f5;color:#a94f3e}
.today-status-strip{display:flex;align-items:center;gap:13px;margin-left:auto;padding:0 15px;min-height:40px;border:1px solid rgba(224,226,217,.74);border-radius:999px;background:rgba(255,254,250,.66)}
.today-status-strip>span{display:flex;align-items:baseline;gap:8px;min-width:0}
.today-status-strip b{color:var(--green);font-size:17px;line-height:1;font-weight:850}
.today-status-strip small{color:#86938d;font-size:11px;font-weight:800}
.today-mini-ring{position:relative;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) 0 0%,#edf0eb 0%)}
.today-mini-ring:before{content:"";position:absolute;width:26px;height:26px;border-radius:50%;background:#fffefa}
.today-mini-ring div{position:relative;z-index:1;display:flex;align-items:baseline;gap:1px}
.today-mini-ring b{font-size:12px}
.today-mini-ring small{font-size:8px}
.today-actions{display:flex;align-items:center;gap:9px}
.today-actions .primary-btn{height:40px;padding:0 16px;border-radius:13px;box-shadow:0 8px 18px rgba(53,95,85,.16)}
.today-notebook{--note-ink:#355f55;position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:calc(100vh - 156px);border-radius:30px;background:#c5d0c6;padding:13px;box-shadow:0 22px 54px rgba(51,63,57,.16),inset 0 0 0 1px rgba(255,254,250,.5);overflow:hidden}
.today-notebook:before{content:"";position:absolute;inset:5px;border:1px solid rgba(72,93,83,.22);border-radius:26px;pointer-events:none}
.notebook-spine{position:absolute;z-index:4;top:0;bottom:0;left:50%;width:30px;transform:translateX(-50%);background:linear-gradient(90deg,rgba(117,132,121,.1),rgba(95,112,102,.22) 44%,rgba(255,254,250,.52) 50%,rgba(82,98,90,.2) 56%,rgba(117,132,121,.1));box-shadow:0 0 18px rgba(64,80,72,.14);pointer-events:none}
.notebook-spine:after{content:"";position:absolute;left:50%;bottom:-2px;width:18px;height:72px;transform:translateX(-50%);background:linear-gradient(90deg,#b7c7bb,#dce6dd 50%,#a5b6aa);clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);box-shadow:0 6px 10px rgba(58,75,67,.16)}
.notebook-page{position:relative;display:flex;flex-direction:column;min-width:0;padding:38px 44px 32px;background:linear-gradient(90deg,rgba(237,232,219,.5),transparent 9%,transparent 91%,rgba(218,213,201,.34)),linear-gradient(180deg,#fffefa,#fbfaf3);box-shadow:inset 0 0 0 1px rgba(226,226,217,.9)}
.memo-page{border-radius:22px 4px 4px 22px;padding-right:52px}
.plan-page{border-radius:4px 22px 22px 4px;padding-left:52px}
.notebook-page:before{content:"";position:absolute;inset:12px 17px;border-radius:18px;border:1px solid rgba(218,224,216,.48);pointer-events:none}
.notebook-page-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px;color:#66786f}
.notebook-page-head>div{display:flex;align-items:center;gap:9px;min-width:0}
.notebook-icon{display:grid;place-items:center;width:22px;height:22px;border:1.7px solid #7f9289;border-radius:6px;color:transparent}
.notebook-page-head b{color:#405b52;font-size:19px;letter-spacing:1px}
.notebook-page-head small{color:#7f8d87;font-size:11px;font-weight:650}
.notebook-date-line{display:flex;align-items:center;justify-content:flex-end;color:#8d9994;font-size:12px;line-height:1;white-space:nowrap}
.notebook-inkbar{display:flex;align-items:center;gap:8px;margin:-5px 0 12px}
.notebook-inkbar button{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 8px;border:1px solid rgba(219,224,216,.9);border-radius:999px;background:rgba(255,254,250,.78);color:#7b8782;font-size:10px;font-weight:800;transition:transform .15s,border-color .15s,background .15s,color .15s}
.notebook-inkbar button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--ink) 32%,#dfe5df);color:var(--ink)}
.notebook-inkbar button.active{background:color-mix(in srgb,var(--ink) 11%,#fffefa);border-color:color-mix(in srgb,var(--ink) 35%,#dfe5df);color:var(--ink)}
.notebook-inkbar i{width:10px;height:10px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb,var(--ink) 12%,#fffefa)}
.notebook-writing{width:100%;border:0;background:transparent;color:var(--note-ink);font-family:"DM Serif Display","Noto Sans SC",serif;font-size:20px;font-weight:600;line-height:1.88;letter-spacing:0;outline:0;resize:none;caret-color:var(--note-ink)}
.notebook-writing::placeholder{color:rgba(105,118,111,.44);font-family:"Noto Sans SC",system-ui,sans-serif;font-size:13px;font-weight:500}
.notebook-writing[readonly]{cursor:pointer;color:rgba(105,118,111,.58)}
.memo-writing{flex:1;min-height:510px;padding:0 0 8px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 37px,rgba(204,211,203,.76) 38px,transparent 39px)}
.notebook-feeling,.notebook-summary{display:block;margin-top:16px;border:1px solid rgba(222,226,217,.84);border-radius:10px;background:rgba(255,254,250,.36)}
.notebook-feeling span,.notebook-summary span{display:block;padding:9px 13px 0;color:#8a9691;font-size:12px;font-weight:700}
.notebook-feeling textarea,.notebook-summary textarea{min-height:88px;padding:4px 13px 12px;font-size:18px;line-height:1.72}
.memo-page .notebook-feeling{margin-top:auto}
.daily-sheet-head{display:grid;grid-template-columns:72px minmax(0,1fr);height:32px;align-items:center;border:1px solid rgba(210,218,210,.86);border-radius:8px 8px 0 0;background:#f5f6f0;color:#75847d;font-size:12px;font-weight:700;text-align:center}
.daily-sheet-head span:first-child{height:100%;display:grid;place-items:center;border-right:1px solid rgba(210,218,210,.86)}
.daily-sheet{border:1px solid rgba(210,218,210,.86);border-top:0;border-radius:0 0 9px 9px;overflow:hidden}
.daily-note-row{display:grid;grid-template-columns:72px 36px minmax(0,1fr) 44px;align-items:center;height:43px;background:rgba(255,254,250,.32);border-top:1px solid rgba(222,226,217,.82)}
.daily-note-row:first-child{border-top:0}
.daily-note-row time{display:grid;place-items:center;height:100%;border-right:1px solid rgba(222,226,217,.82);color:#607a72;font-size:12px;font-weight:750;line-height:1}
.daily-note-check{display:grid;place-items:center;width:100%;height:100%;min-height:0;padding:0;border:0;border-right:1px solid rgba(222,226,217,.82);background:transparent;color:var(--note-ink);font-size:15px;font-weight:900;line-height:1}
.daily-note-check:before{content:"";display:block;width:14px;height:14px;border:1.5px solid #c5d0ca;border-radius:4px;background:#fffefa}
.daily-note-row.done .daily-note-check:before{content:"";background:var(--note-ink);border-color:var(--note-ink);box-shadow:inset 0 0 0 3px #fffefa}
.daily-note-row.done .daily-note-check{font-size:0}
.daily-note-input{display:block;height:42px;min-height:0;padding:8px 9px 0;font-size:18px;line-height:24px;overflow:hidden}
.daily-note-row.done .daily-note-input{text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:color-mix(in srgb,var(--note-ink) 46%,transparent);opacity:.62}
.daily-note-open{height:100%;min-height:0;padding:0;border:0;border-left:1px solid rgba(222,226,217,.82);background:rgba(255,254,250,.34);color:#91a09a;font-size:10px;font-weight:900;line-height:1}
.daily-note-open:hover{background:#eef5f1;color:var(--green)}
.notebook-summary{margin-top:10px}
.notebook-summary textarea{min-height:84px}
.dark .today-date-block,.dark .today-status-strip,.dark .notebook-inkbar button{border-color:#41504c;background:rgba(36,50,46,.72)}
.dark .today-date-nav,.dark .today-back-today{border-color:#41504c;background:rgba(36,50,46,.72);color:#b7c6bf}
.dark .today-notebook{background:#607169}
.dark .notebook-page{background:linear-gradient(90deg,rgba(30,38,35,.4),transparent 10%,transparent 90%,rgba(30,38,35,.32)),linear-gradient(180deg,#293630,#24322e)}
.dark .notebook-page-head b{color:#e7eee9}.dark .notebook-page-head,.dark .notebook-page-head small,.dark .notebook-date-line,.dark .today-status-strip small{color:#aebbb5}.dark .daily-sheet,.dark .daily-sheet-head,.dark .daily-note-row,.dark .daily-note-row time,.dark .daily-note-check,.dark .daily-note-open{border-color:#40504a}.dark .daily-sheet-head{background:#304039}.dark .notebook-feeling,.dark .notebook-summary{border-color:#40504a;background:rgba(255,255,255,.03)}
@media(max-width:1180px){.today-notebook{min-height:auto}.notebook-page{padding-left:32px;padding-right:32px}.memo-page{padding-right:42px}.plan-page{padding-left:42px}.memo-writing{min-height:440px}}
@media(max-width:900px){.today-toolbar{align-items:stretch;flex-wrap:wrap}.today-status-strip{order:3;width:100%;justify-content:space-between;margin-left:0}.today-actions{margin-left:auto}.today-notebook{grid-template-columns:1fr;padding:10px;border-radius:24px}.notebook-spine{display:none}.memo-page,.plan-page{border-radius:18px;padding:28px 24px}.plan-page{margin-top:10px}.memo-writing{min-height:310px}}
@media(max-width:560px){#dashboard{padding:14px 14px 72px}.today-toolbar{gap:10px}.today-date-block{width:100%;justify-content:space-between}.today-date-copy{min-width:0;flex:1}.today-date-nav{width:32px;height:32px}.today-back-today{width:100%}.today-actions{display:flex;width:100%;margin-left:0}.today-actions button{width:100%}.today-status-strip{width:100%;justify-content:center;gap:8px;overflow:auto}.notebook-page{padding:22px 16px}.notebook-page-head{align-items:flex-start;flex-direction:column;margin-bottom:14px}.notebook-date-line{font-size:11px}.notebook-page-head b{font-size:17px}.notebook-writing{font-size:17px}.memo-writing{min-height:270px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 32px,rgba(204,211,203,.76) 33px,transparent 34px)}.daily-sheet-head{grid-template-columns:58px minmax(0,1fr)}.daily-note-row{grid-template-columns:58px 32px minmax(0,1fr) 36px}.daily-note-input{font-size:16px}.notebook-feeling textarea,.notebook-summary textarea{font-size:16px}}

/* Message board */
#library{padding-top:20px!important}
.board-shell{display:grid;gap:14px;max-width:920px;margin:0 auto}
.board-composer-card{padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#fffefa,#fbfaf6);box-shadow:0 12px 30px rgba(55,68,62,.052)}
.board-composer{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start}
.board-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#dcebe3;color:var(--green);font-size:13px;font-weight:800;line-height:1;box-shadow:inset 0 0 0 1px rgba(255,254,250,.72)}
.board-composer-main{display:grid;gap:10px;min-width:0}
.board-composer textarea,.board-comment-form textarea{width:100%;resize:vertical;border:1px solid rgba(224,226,217,.88);border-radius:14px;background:rgba(255,254,250,.92);color:var(--ink);outline:0;line-height:1.7}
.board-composer textarea{min-height:86px;padding:12px 13px}
.board-composer textarea:focus,.board-comment-form textarea:focus{border-color:#b8d0c7;box-shadow:0 0 0 3px rgba(102,143,132,.12);background:#fffefa}
.board-composer textarea[readonly],.board-comment-form textarea[readonly]{color:#98a39f;background:#f7f6f0;cursor:pointer}
.board-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.board-composer-actions span{color:#87938e;font-size:11px}
.board-composer-actions .primary-btn{height:36px;padding:0 18px;border-radius:12px;box-shadow:0 7px 16px rgba(53,95,85,.15)}
.board-feed{display:grid;gap:12px}
.board-post{padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#fffefa,#fbfaf5);box-shadow:0 12px 30px rgba(55,68,62,.052)}
.board-post-head,.board-author,.board-comment-head{display:flex;align-items:center}
.board-post-head{justify-content:space-between;gap:12px;margin-bottom:12px}
.board-author,.board-comment-head{gap:10px;min-width:0}
.board-author b,.board-comment-head b{display:block;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.board-author small,.board-comment-head small{display:block;overflow:hidden;margin-top:3px;color:#8b9691;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.board-post-head time,.board-comment-head time{margin-left:auto;color:#98a39f;font-size:10px;white-space:nowrap}
.board-post-content{margin:0 0 13px;padding-left:48px;color:#384942;font-size:14px;line-height:1.9;white-space:normal;word-break:break-word}
.board-post-actions{display:flex;gap:8px;margin-left:48px;padding-top:1px}
.board-action,.board-link-btn,.board-comment-form button{border:1px solid rgba(224,226,217,.86);background:#fffefa;color:#718079;border-radius:999px;font-size:11px;font-weight:750;transition:background .16s,color .16s,border-color .16s,transform .16s}
.board-action{height:30px;padding:0 12px}
.board-action b{font-size:11px}
.board-action:hover,.board-link-btn:hover,.board-comment-form button:hover{border-color:#c6d8d0;background:#eef5f1;color:var(--green);transform:translateY(-1px)}
.board-action.active{background:#e7f0eb;border-color:#c7d8d0;color:var(--green)}
.board-comments{display:grid;gap:9px;margin:13px 0 0 48px;padding:12px;border-radius:15px;background:#f7f6f0;border:1px solid rgba(229,229,220,.76)}
.board-comment{display:grid;gap:6px;padding:10px 10px 9px;border-radius:12px;background:rgba(255,254,250,.84);border:1px solid rgba(228,229,220,.7)}
.board-comment.reply{margin-left:18px;background:#fbfaf5}
.board-comment .board-avatar{width:28px;height:28px;font-size:11px}
.board-comment-text{padding-left:38px;color:#4c5d56;font-size:12px;line-height:1.75;word-break:break-word}
.board-link-btn{justify-self:start;height:26px;padding:0 9px;margin-left:38px;background:transparent}
.board-replies{display:grid;gap:8px;margin-top:3px}
.board-empty-comments{color:#9aa39f;font-size:11px}
.board-comment-form{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:8px;margin:10px 0 0 48px}
.board-comment-form textarea{min-height:38px;max-height:120px;padding:8px 11px;border-radius:13px;font-size:12px}
.board-comment-form button{height:34px;padding:0 12px}
.board-cancel-reply{background:#f7f6f0!important}
.board-state{display:grid;place-items:center;gap:6px;min-height:150px;color:#87938e;text-align:center}
.board-state b{color:var(--ink);font-size:16px}
.board-state span{font-size:12px}
@media(max-width:720px){#library{padding-top:14px!important}.board-shell{gap:11px}.board-composer-card,.board-post{padding:14px;border-radius:16px}.board-composer{grid-template-columns:34px minmax(0,1fr);gap:10px}.board-avatar{width:32px;height:32px}.board-composer textarea{min-height:78px}.board-post-content,.board-post-actions,.board-comments,.board-comment-form{margin-left:0;padding-left:0}.board-post-head{align-items:flex-start}.board-comment-text,.board-link-btn{margin-left:0;padding-left:0}.board-comment.reply{margin-left:10px}.board-comment-form{grid-template-columns:1fr auto}.board-cancel-reply{grid-column:1/-1;justify-self:start}.board-composer-actions{align-items:flex-end}.board-composer-actions span{max-width:190px;line-height:1.5}}

/* Focus room merge */
#focus{width:100%;max-width:none;padding:18px 20px 48px}
#focus .focus-hero{display:none!important}
#focus .focus-layout{display:block;position:relative;margin-top:0}
#focus .focus-main{position:relative;min-height:470px;padding:22px 26px 24px;border-color:rgba(224,226,217,.86);background:radial-gradient(circle at 50% 38%,rgba(231,241,236,.68),rgba(255,254,250,.94) 46%,#fffefa 100%);overflow:hidden}
.focus-top{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.focus-top .pretty-select{width:min(340px,54vw)!important;margin:0}
.focus-mode-switch{display:inline-flex;align-items:center;gap:5px;padding:4px;border:1px solid rgba(224,226,217,.78);border-radius:999px;background:rgba(255,254,250,.68);box-shadow:0 10px 24px rgba(53,95,85,.055)}
.focus-mode-switch button{height:31px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:#74827d;font-size:11px;font-weight:700;transition:background .16s,color .16s,transform .16s,box-shadow .16s}
.focus-mode-switch button:hover{background:#eef5f1;color:var(--green);transform:translateY(-1px)}
.focus-mode-switch button.active{background:var(--green);color:#fff;box-shadow:0 7px 16px rgba(53,95,85,.16)}
.focus-duration-row{position:relative;z-index:3;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:max-content;margin:12px auto 0;padding:8px 10px;border:1px solid rgba(224,226,217,.78);border-radius:999px;background:rgba(255,254,250,.72);color:#6d7c76;font-size:12px;box-shadow:0 10px 24px rgba(53,95,85,.055)}
.focus-duration-row[hidden]{display:none!important}
.focus-duration-row label{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--green);font-weight:700}
.focus-duration-row input{width:58px;height:30px;border:1px solid rgba(210,222,216,.95);border-radius:999px;background:#fffefa;color:var(--green);font-size:13px;font-weight:800;text-align:center;outline:0}
.focus-duration-row input:focus{border-color:#95b7ad;box-shadow:0 0 0 3px rgba(102,143,132,.12)}
#focus .timer-ring{z-index:2;width:270px;height:270px;margin:22px auto 16px!important;background:transparent!important}
#focus .timer-ring:before{background:conic-gradient(from 0deg,var(--green) 0 var(--timer-progress,0%),rgba(205,220,214,.52) var(--timer-progress,0%) 100%)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.62),0 22px 58px rgba(53,95,85,.13)}
#focus .timer-ring b{font-size:50px;letter-spacing:1px}
.timer-actions{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:4px}
.timer-actions button{height:40px;border-radius:13px;padding:0 16px;font-weight:750}
.timer-actions .primary-btn{min-width:128px}
#focus .focus-note{position:relative;z-index:3;margin-top:14px}
#focus .focus-side{position:absolute;right:38px;bottom:34px;display:block;width:154px;z-index:4}
#focus .focus-side>.card:first-child{display:none!important}
#focus .focus-side>.card{margin:0}
#focus .focus-side>.card:last-child{padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
#focus .focus-side h2,#focus .focus-side .small-copy{display:none!important}
#focus .sound-grid{display:grid;grid-template-columns:1fr;gap:10px}
#focus .sound-grid button:not([data-sound="rain"]){display:none!important}
#focus .sound-grid button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;min-width:78px;height:36px;padding:0 15px;border-radius:999px;background:rgba(255,254,250,.9);border:1px solid rgba(201,218,210,.82);color:var(--green);font-size:0;font-weight:800;letter-spacing:.2px;box-shadow:0 10px 22px rgba(53,95,85,.07),inset 0 0 0 1px rgba(255,255,255,.72);white-space:nowrap;transition:transform .16s,border-color .16s,background .16s,box-shadow .16s}
#focus .sound-grid button:before{content:"";width:7px;height:7px;border-radius:50%;background:#b9cdc5;box-shadow:0 0 0 4px rgba(185,205,197,.2)}
#focus .sound-grid button:after{content:"雨声";font-size:13px}
#focus .sound-grid button:hover{transform:translateY(-1px);border-color:#b9cec5;background:#fffefa;box-shadow:0 14px 28px rgba(53,95,85,.1),inset 0 0 0 1px rgba(255,255,255,.8)}
#focus .sound-grid button.active{background:linear-gradient(135deg,#355f55,#47766a);border-color:#355f55;color:#fff;box-shadow:0 16px 30px rgba(53,95,85,.2)}
#focus .sound-grid button.active:before{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18)}
#focus .sound-grid button.active:after{content:"雨声中"}
.focus-plan-card{margin-top:14px;padding:22px 24px 24px;border-color:rgba(224,226,217,.86);background:linear-gradient(180deg,#fffefa,#fbfaf6);box-shadow:0 16px 34px rgba(54,69,62,.055);overflow:visible}
.focus-plan-head{margin-bottom:8px}
.focus-plan-context{display:none!important}
.focus-today-gantt{position:relative;display:grid;grid-template-columns:132px repeat(12,1fr);width:100%;min-width:0;margin-top:6px;border-top:1px solid rgba(224,226,217,.9);font-size:10px}
.focus-today-gantt .today-time-axis{height:52px}
.focus-today-gantt .range-label{min-height:58px;padding:10px 8px 9px!important}
.focus-today-gantt .range-label strong{font-size:12px}
.focus-today-gantt .gantt-range-row{min-height:58px}
.focus-today-gantt .gantt-range-bar{top:20px;height:22px;line-height:22px}
.focus-empty-timeline{min-height:150px;margin-top:8px}
.focus-now-marker{top:52px;bottom:-14px}
.focus-record-table-card{margin-top:18px;padding:22px 24px;border-color:rgba(224,226,217,.86);background:linear-gradient(180deg,#fffefa,#fbfaf6);box-shadow:0 16px 34px rgba(54,69,62,.055)}
.focus-record-table-wrap{overflow:auto;margin-top:10px}
.focus-record-table{width:100%;min-width:820px;border-collapse:collapse;font-size:12px}
.focus-record-table th{height:38px;border-bottom:1px solid rgba(224,226,217,.9);color:#7a8782;font-weight:700;text-align:left}
.focus-record-table td{height:48px;border-bottom:1px solid rgba(224,226,217,.72);color:#26352f}
.focus-record-table tr{transition:background .16s,transform .16s}
.focus-record-table tbody tr:not(.focus-record-empty-row){cursor:pointer}
.focus-record-table tbody tr:not(.focus-record-empty-row):hover{background:#f7faf7}
.focus-record-table .subject{display:inline-flex;align-items:center;height:22px;margin-right:10px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700;vertical-align:middle}
.focus-record-table td:last-child{text-align:right;color:#8a9691;font-size:18px}
.focus-record-empty-row td{padding:28px 12px;text-align:center;color:#84918b}
.focus-record-empty-row b,.focus-record-empty-row span{display:block}
.focus-record-empty-row b{margin-bottom:6px;color:#64746e}
@media(max-width:1120px){#focus .focus-main{padding-right:26px}#focus .focus-side{right:26px;bottom:26px}}
@media(max-width:720px){#focus .focus-side{position:static;width:100%;margin-top:-52px;margin-bottom:16px;padding:0 14px}#focus .focus-side>.card:last-child{width:max-content;margin-left:auto}.focus-top .pretty-select{width:min(100%,460px)!important}.focus-duration-row{margin-left:0}.focus-record-table{min-width:720px}}
@media(max-width:560px){#focus{padding:14px 14px 72px}#focus .focus-main{min-height:auto;padding:16px 14px 20px}#focus .timer-ring{width:230px;height:230px}#focus .timer-ring b{font-size:40px}#focus .focus-side{margin-top:12px;padding:0}#focus .focus-side>.card:last-child{margin:0 auto}.focus-top{align-items:stretch}.focus-top .pretty-select,.focus-mode-switch{width:100%!important}.focus-mode-switch{justify-content:space-between}.focus-mode-switch button{flex:1}.focus-duration-row{width:100%;justify-content:space-between;border-radius:14px}.timer-actions{flex-wrap:wrap}.timer-actions button{flex:1;min-width:108px}.focus-plan-card{padding:16px 14px;overflow:auto}.focus-today-gantt{min-width:760px}.focus-record-table-card{padding:18px 16px}}

#analytics{width:100%;max-width:none;padding:18px 20px 48px}
#analytics .analytics-compat{display:none!important}
#analytics .analytics-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}
#analytics .analytics-range-tabs{padding:4px;border:1px solid rgba(224,226,217,.72);border-radius:15px;background:rgba(255,254,250,.52)}
#analytics .analytics-range-tabs button{height:34px;padding:0 13px;border-radius:11px;font-weight:650}
.analytics-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
#analytics .stat-card{min-height:92px;padding:15px 17px;border-radius:16px;background:linear-gradient(180deg,#fffefa,#fbfaf5);box-shadow:0 9px 22px rgba(55,68,62,.045)}
#analytics .stat-card span{display:block;margin-bottom:10px;color:#7d8c86;font-size:12px;font-weight:700}
#analytics .stat-card b{display:block;color:#355f55;font-size:26px;line-height:1;letter-spacing:.1px}
#analytics .stat-card small{display:block;overflow:hidden;margin-top:9px;color:#7e8a85;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.analytics-main-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px}
.analytics-heatmap-card,.analytics-rhythm-card,.sankey-card,.analytics-extra-grid>.card{border-radius:22px;border-color:rgba(225,228,219,.88);box-shadow:0 15px 36px rgba(54,69,62,.055)}
.analytics-heatmap-card{padding:18px 20px 13px}
.analytics-heatmap-card .section-head{margin-bottom:8px}
.heatmap-frame{min-height:0;padding:4px 0 0;border:0;border-radius:0;background:transparent;overflow:visible}
.heatmap-months{display:grid;grid-auto-flow:column;grid-auto-columns:14px;gap:3.5px;width:max-content;margin-left:44px;margin-bottom:7px;color:#66746e;font-size:12px;line-height:16px}
.heatmap-months span{min-width:30px}
.heatmap-shell{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;padding-top:0}
.heatmap-weekdays{display:grid;grid-template-rows:repeat(7,14px);gap:3.5px;color:#7f8d87;font-size:11px;line-height:14px;text-align:right}
.heatmap{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,14px);grid-auto-columns:14px;gap:3.5px;width:max-content}
.heatmap i{display:block;width:14px;height:14px;border-radius:3.5px;background:#edf0eb;box-shadow:inset 0 0 0 1px rgba(102,143,132,.08)}
.heatmap i.l1{background:#dcebe3}.heatmap i.l2{background:#b9d8c8}.heatmap i.l3{background:#82b99a}.heatmap i.l4{background:#4f8e70}.heatmap i.l5{background:#2f684f}
.heatmap-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:9px 18px 0 44px;color:#7f8d87;font-size:11px}
.heatmap-legend{display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#7f8d87;font-size:11px;white-space:nowrap}
.heatmap-legend i{width:12px;height:12px;border-radius:3px;background:#edf0eb;box-shadow:inset 0 0 0 1px rgba(102,143,132,.08)}.heatmap-legend .l1{background:#dcebe3}.heatmap-legend .l2{background:#b9d8c8}.heatmap-legend .l3{background:#82b99a}.heatmap-legend .l4{background:#4f8e70}
.analytics-chart-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(260px,1fr);gap:16px;margin-bottom:16px}
.analytics-trend-card,.analytics-pie-card{border-radius:22px;border-color:rgba(225,228,219,.88);box-shadow:0 15px 36px rgba(54,69,62,.055)}
.analytics-bar-chart{display:grid;grid-template-columns:54px minmax(0,1fr);min-height:300px;padding:6px 2px 2px}
.trend-y-axis{display:grid;grid-template-rows:repeat(6,1fr);padding:0 12px 24px 0;color:#9aa39f;font-size:12px;text-align:right}
.trend-plot{position:relative;min-width:0;border-bottom:1px solid #dfe5df}
.trend-plot>i{position:absolute;left:0;right:0;height:1px;background:#e5e9e4}
.trend-bars{position:absolute;inset:0 0 0 0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(12px,1fr);align-items:end;gap:8px}
.trend-bar-item{position:relative;display:flex;align-items:flex-end;justify-content:center;height:100%;padding-bottom:24px}
.trend-bar-item span{display:block;width:min(22px,78%);min-height:0;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#76aa98,#a8cfc1);box-shadow:0 6px 14px rgba(92,130,118,.16)}
.trend-bar-item small{position:absolute;bottom:0;left:50%;transform:translateX(-50%);color:#899691;font-size:11px;white-space:nowrap}
.analytics-pie-wrap{display:grid;gap:16px;padding-top:2px}
.analytics-pie-top{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:16px}
.analytics-pie{position:relative;width:132px;aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,254,250,.92),inset 0 0 0 5px rgba(255,254,250,.2),0 12px 24px rgba(54,69,62,.07)}
.analytics-pie:before{content:"";position:absolute;inset:-8px;border-radius:50%;background:linear-gradient(135deg,rgba(255,254,250,.94),rgba(237,242,236,.68));box-shadow:inset 0 0 0 1px rgba(224,226,217,.76),0 7px 18px rgba(54,69,62,.045);z-index:-1}
.analytics-pie:after{content:"";position:absolute;inset:31%;border-radius:50%;background:#fffefa;box-shadow:0 0 0 4px rgba(255,254,250,.72),inset 0 0 0 1px rgba(218,224,216,.95),0 4px 13px rgba(54,69,62,.045)}
.analytics-pie-summary{display:grid;gap:5px;align-content:center;min-width:0}.analytics-pie-summary span{color:#8b9892;font-size:11px;font-weight:800;letter-spacing:1px}.analytics-pie-summary b{color:#355f55;font-size:30px;line-height:1}.analytics-pie-summary small{color:#7d8984;font-size:11px;line-height:1.55}
.analytics-pie-legend{display:grid;gap:8px;width:100%}
.pie-legend-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-height:34px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--module) 13%,#e2e7e2);border-radius:11px;background:linear-gradient(180deg,color-mix(in srgb,var(--module) 6%,#fffefa),#fbfaf6);color:#7d8984;font-size:11px}.pie-legend-row i{width:12px;height:12px;border-radius:4px;background:color-mix(in srgb,var(--module) 76%,#f7f6f0);box-shadow:0 0 0 3px color-mix(in srgb,var(--module) 11%,#fffefa)}.pie-legend-row span{overflow:hidden;color:#2f3d37;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.pie-legend-row b{color:#436b61;font-size:12px}.pie-legend-row small{color:#87938e;font-size:10px}
.rhythm-list{display:grid;gap:10px}
.rhythm-item{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:10px;padding:12px 13px;border-radius:14px;background:#f7f6f0}
.rhythm-item span{color:#8a9691;font-size:11px;font-weight:700}.rhythm-item b{color:#355f55;font-size:18px}.rhythm-item small{color:#7f8d87;font-size:11px}
.sankey-card{margin-bottom:16px;padding:20px 22px 24px;overflow:hidden}
.sankey-chart{position:relative;display:grid;grid-template-columns:minmax(150px,.9fr) minmax(72px,.34fr) minmax(170px,.84fr) minmax(72px,.34fr) minmax(240px,1.18fr);gap:10px;min-height:292px;align-items:start;overflow:hidden}
.sankey-col{position:relative;z-index:2;display:grid;align-content:start;gap:10px}
.sankey-col h3{margin:0 0 4px;color:#7f8d87;font-size:11px;letter-spacing:1.2px;font-weight:800}
.sankey-node{position:relative;overflow:hidden;min-height:54px;padding:12px 14px 12px 17px;border:1px solid rgba(224,226,217,.92);border-radius:13px;background:linear-gradient(180deg,rgba(255,254,250,.98),rgba(249,248,243,.96));box-shadow:0 9px 20px rgba(54,69,62,.045);transition:border-color .18s,box-shadow .18s,background .18s}
.sankey-node:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 99px 99px 0;background:#cddbd4;opacity:.9}
.sankey-node:hover{border-color:rgba(199,216,208,.96);box-shadow:0 12px 24px rgba(54,69,62,.065)}
.sankey-icon{display:none}
.sankey-node b{position:relative;z-index:2;display:block;overflow:hidden;color:#26352f;font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.sankey-node small{position:relative;z-index:2;display:block;margin-top:5px;color:#7d8984;font-size:11px;line-height:1.25}
.sankey-node i{position:absolute;left:0;bottom:0;height:3px;border-radius:0 99px 99px 0;background:#7ca797}
.date-node{border-color:rgba(217,224,216,.96);background:linear-gradient(135deg,#fffefa 0%,#fbfaf5 56%,#f1f7f3 100%)}.date-node:before{background:linear-gradient(180deg,#668f84,#d58a68)}.date-node b{color:#2f443e}.date-node i{background:linear-gradient(90deg,#668f84,#d58a68)}
.module-node{border-color:color-mix(in srgb,var(--module) 24%,#dfe6df);background:linear-gradient(135deg,color-mix(in srgb,var(--module) 10%,#fffefa),#fffefa)}.module-node:before,.task-node:before{background:var(--module)}.module-node i{background:var(--module)}
.task-node{border-color:color-mix(in srgb,var(--module) 16%,#e2e6dd);background:linear-gradient(180deg,#fffefa,#fbfaf6)}.task-node i{background:var(--module)}
.sankey-link-space{min-height:1px}
.sankey-overlay{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;overflow:visible}
.sankey-flow-path{fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.24;mix-blend-mode:multiply;filter:drop-shadow(0 7px 10px rgba(72,91,82,.08));transition:opacity .18s}
.sankey-flow-path:hover{opacity:.46}
.tomato-col{align-content:center}.tomato-core{display:grid;place-items:center;min-height:132px;border-radius:22px;background:radial-gradient(circle at 50% 35%,#fffefa,#e8f1ed);border:1px solid #dce6df;text-align:center}
.tomato-core b{color:#355f55;font-size:42px;line-height:1}.tomato-core span{color:#26352f;font-weight:800}.tomato-core small{color:#7d8984;font-size:11px}
.tomato-flow{display:flex;align-items:baseline;justify-content:space-between;padding:9px 12px;border-radius:12px;background:#f7f6f0}.tomato-flow span,.tomato-flow small{color:#7d8984;font-size:11px}.tomato-flow b{color:#355f55;font-size:18px}
.analytics-extra-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.module-mix,.plan-progress-list{display:grid;gap:12px}.mix-row,.progress-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.9fr) auto;align-items:center;gap:12px}
.mix-row b,.progress-row b{display:block;font-size:12px;color:#26352f}.mix-row small,.progress-row small{display:block;margin-top:4px;color:#7d8984;font-size:10px}
.mix-row span,.progress-row span{height:9px;border-radius:99px;background:#eef1ed;overflow:hidden}.mix-row i,.progress-row i{display:block;height:100%;border-radius:99px;background:var(--module)}.progress-row em{color:#789088;font-size:11px;font-style:normal;font-weight:800}
.time-block-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;min-height:170px;align-items:end}
.time-block-bars div{display:grid;grid-template-rows:auto 124px auto;gap:8px;text-align:center}.time-block-bars b{color:#64736d;font-size:11px}.time-block-bars span{display:flex;align-items:end;justify-content:center;border-radius:14px;background:#f4f5ef;padding:8px}.time-block-bars i{display:block;width:24px;border-radius:999px 999px 4px 4px;background:linear-gradient(180deg,#6f9d90,#d9e8e2)}.time-block-bars small{color:#7d8984;font-size:10px}
.analytics-empty{display:grid;place-items:center;min-height:120px;border:1px dashed #dfe5de;border-radius:16px;color:#8a9691;font-size:12px;text-align:center;line-height:1.8}
@media(max-width:1180px){.analytics-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-chart-grid{grid-template-columns:1fr}.sankey-chart{grid-template-columns:1fr;overflow:visible}.sankey-overlay{display:none}.tomato-col{align-content:start}}
@media(max-width:720px){#analytics{padding:16px 14px 70px}#analytics .analytics-toolbar{justify-content:flex-start;overflow:auto}.analytics-stat-grid{grid-template-columns:1fr}.analytics-bar-chart{grid-template-columns:42px minmax(0,1fr);min-height:240px}.trend-bars{gap:4px}.trend-bar-item span{width:min(16px,82%)}.analytics-pie-top{grid-template-columns:112px minmax(0,1fr)}.analytics-pie{width:112px}.analytics-pie-summary b{font-size:25px}.heatmap-frame{overflow-x:auto}.heatmap-shell{padding-bottom:4px}}

.essay-filter-card select{height:40px;width:100%;border:1px solid var(--line);border-radius:12px;background:rgba(255,254,250,.86);padding:0 34px 0 12px;color:#53645e;font-size:12px;outline:0;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#789088 50%),linear-gradient(135deg,#789088 50%,transparent 50%);background-position:calc(100% - 17px) 17px,calc(100% - 12px) 17px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.essay-filter-card select:hover{border-color:#cbdad4;background-color:#fffefa}.essay-filter-card select:focus{border-color:#95b7ad;box-shadow:0 0 0 3px rgba(102,143,132,.12)}

.bank-page-shell{display:grid;gap:18px}.bank-hero{margin-bottom:4px}.essay-search{display:flex;align-items:center;gap:9px;width:min(420px,100%);height:46px;padding:0 15px;border:1px solid rgba(216,224,218,.9);border-radius:999px;background:rgba(255,254,250,.86);box-shadow:0 12px 28px rgba(59,71,64,.055);color:var(--muted)}.essay-search input{border:0;background:transparent;outline:0;width:100%;color:var(--ink)}.bank-mode-tabs{justify-content:flex-start;margin-bottom:2px}.bank-mode-tabs button{padding:10px 14px}.essay-filter-card{display:grid;grid-template-columns:minmax(160px,1fr) 180px 160px 180px;gap:12px;align-items:center;padding:14px;border:1px solid rgba(222,226,216,.9);border-radius:18px;background:rgba(255,254,250,.76);box-shadow:0 12px 30px rgba(59,71,64,.045)}.essay-filter-label{display:block;color:#8e9c96;font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase}.essay-filter-card b{font-size:22px;color:var(--green)}.essay-filter-card small{color:var(--muted)}.essay-paper-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.essay-paper-card{min-height:238px;display:flex;flex-direction:column;gap:12px;cursor:pointer;transition:.2s ease}.essay-paper-card:hover,.essay-fav-answer:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(59,71,64,.12);border-color:rgba(102,143,132,.38)}.essay-card-top,.essay-meta-row,.essay-card-stats,.essay-detail-head,.essay-answer-head,.essay-answer-actions{display:flex;align-items:center}.essay-card-top{justify-content:space-between}.essay-paper-card h2{font-size:17px;line-height:1.45}.essay-paper-card p{min-height:48px;margin:0;color:var(--muted);font-size:12px;line-height:1.75}.essay-meta-row{gap:7px;flex-wrap:wrap}.essay-meta-row span,.essay-card-stats span,.essay-card-stats em{padding:5px 8px;border-radius:999px;background:#f5f3ec;color:#788580;font-size:11px}.essay-card-stats{gap:8px;flex-wrap:wrap;margin-top:auto}.essay-card-stats b{color:var(--ink)}.essay-card-stats em{background:#e8f1ec;color:var(--green);font-style:normal}.essay-star{border:1px solid rgba(224,226,218,.9);background:#fffefa;color:#718079;border-radius:999px;padding:7px 10px;font-size:11px;transition:.18s}.essay-star:hover{border-color:rgba(53,95,85,.38);color:var(--green);transform:translateY(-1px)}.essay-star.active{background:#e7f0eb;color:var(--green);border-color:#c9dad2;font-weight:700}.essay-detail-card{padding:22px}.essay-detail-head{gap:16px;align-items:flex-start;margin-bottom:20px}.essay-detail-head>div{flex:1}.essay-detail-head h2{font-size:20px;margin:9px 0 6px}.essay-detail-head p{margin:0;color:var(--muted);font-size:12px}.essay-back{white-space:nowrap}.essay-detail-grid{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px}.essay-question-nav{display:grid;gap:10px;align-content:start;position:sticky;top:96px}.essay-question-nav button{border:1px solid var(--line);background:#fffefa;border-radius:14px;text-align:left;padding:12px;color:var(--ink);transition:.18s}.essay-question-nav button:hover{border-color:#c9dad2;transform:translateX(2px)}.essay-question-nav button.active{background:#e7f0eb;border-color:#c7d8d0;color:var(--green)}.essay-question-nav small{display:block;margin-top:5px;color:var(--muted)}.essay-reading{display:grid;gap:16px}.essay-materials,.essay-question-panel,.essay-answer-panel{padding:18px;border:1px solid rgba(228,229,219,.9);border-radius:18px;background:#fffefa}.essay-materials h3,.essay-question-panel h3,.essay-answer-panel h3{margin:0 0 12px;font-size:16px}.essay-material{border:1px solid var(--line);border-radius:15px;background:#fbfaf6;margin-top:10px;overflow:hidden}.essay-material summary{list-style:none;cursor:pointer;padding:14px 15px;display:flex;justify-content:space-between;gap:14px;align-items:center}.essay-material summary::-webkit-details-marker{display:none}.essay-material summary b{display:block;margin-bottom:5px}.essay-material summary span{color:var(--muted);font-size:12px;line-height:1.65}.essay-material summary em{font-style:normal;color:var(--green);font-size:12px;white-space:nowrap}.essay-material[open] summary{border-bottom:1px solid var(--line);background:#f7f5ef}.essay-material p,.essay-question-panel p,.essay-answer-card p{white-space:pre-wrap;line-height:1.92;color:#52615b;font-size:13px;margin:0}.essay-material p{padding:16px 18px}.essay-question-panel{background:linear-gradient(135deg,#fffefa,#f8f5ed)}.essay-answer-card{border:1px solid var(--line);border-radius:16px;background:#fbfaf6;padding:15px;margin-top:12px}.essay-answer-head{justify-content:space-between;gap:12px}.essay-answer-head b{display:block;margin-bottom:7px}.essay-answer-head i{display:inline-block;margin-right:6px;padding:4px 7px;border-radius:999px;background:#f1eee4;color:#8a7967;font-size:10px;font-style:normal}.essay-answer-actions{gap:8px}.essay-answer-actions button{border:1px solid #dfe5df;background:#fffefa;border-radius:999px;padding:7px 10px;color:#718079;font-size:11px}.essay-answer-actions button.active{background:#355f55;color:#fff;border-color:#355f55}.essay-answer-card details{margin-top:11px}.essay-answer-card summary{cursor:pointer;color:var(--green);font-size:12px;margin-bottom:10px}.essay-empty{display:grid;place-items:center;min-height:180px;color:var(--muted);text-align:center}.essay-empty b{display:block;color:var(--ink);font-size:16px;margin-bottom:6px}.essay-empty.small{min-height:90px;border:1px dashed var(--line);border-radius:14px}.essay-favorites{display:grid;gap:16px}.essay-answer-list{display:grid;gap:12px}.essay-fav-answer{cursor:pointer}.essay-fav-answer p{margin:8px 0;color:var(--muted);line-height:1.7}.essay-fav-answer small{color:#8b9691}

@media(max-width:1100px){.essay-paper-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.essay-filter-card{grid-template-columns:1fr 1fr}.essay-detail-grid{grid-template-columns:1fr}.essay-question-nav{position:static;display:flex;overflow:auto;padding-bottom:4px}.essay-question-nav button{min-width:148px}.essay-detail-head{flex-wrap:wrap}}
@media(max-width:640px){.bank-hero{flex-direction:column;align-items:flex-start}.essay-search{width:100%}.essay-filter-card{grid-template-columns:1fr}.essay-paper-grid{grid-template-columns:1fr}.essay-detail-card{padding:16px}.essay-detail-head{gap:10px}.essay-detail-head .essay-star{width:100%}.essay-materials,.essay-question-panel,.essay-answer-panel{padding:14px}.essay-answer-head{align-items:flex-start;flex-direction:column}.essay-answer-actions{width:100%}.essay-answer-actions button{flex:1}}

/* Essay bank polish */
#bank{width:100%;max-width:none;padding-left:20px;padding-right:20px}.bank-page-shell{gap:16px}.bank-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:4px}.bank-hero h1{font-size:28px;letter-spacing:.2px}.bank-hero p{max-width:620px}.essay-search{height:44px;width:min(360px,100%);padding:0 14px;border-color:rgba(224,226,217,.82);background:rgba(255,254,250,.72);box-shadow:none;backdrop-filter:blur(10px)}.essay-search:hover,.essay-search:focus-within{border-color:#cbdad4;background:#fffefa;box-shadow:0 8px 20px rgba(53,95,85,.06)}.essay-search span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;color:#789088;font-size:13px}.essay-search input{font-size:12px}.essay-search input::placeholder{color:#98a39e}.bank-mode-tabs{display:flex;align-items:center;gap:6px;margin:0;padding:4px;width:max-content;border:1px solid rgba(224,226,217,.68);border-radius:15px;background:rgba(255,254,250,.46)}.bank-mode-tabs button{height:34px;padding:0 12px;border:0;border-radius:11px;background:transparent;color:#72817b;font-size:12px;font-weight:650;transition:background .16s,color .16s,transform .16s}.bank-mode-tabs button:hover{background:#f0f5f2;color:var(--green);transform:translateY(-1px)}.bank-mode-tabs button.active{background:#e7f0eb;color:var(--green);box-shadow:inset 0 0 0 1px rgba(199,216,208,.42)}.bank-mode-tabs i{display:inline-grid;place-items:center;min-width:17px;height:17px;margin-left:4px;border-radius:99px;background:#d88b68;color:#fff;font-size:9px;font-style:normal}.essay-filter-card{grid-template-columns:220px minmax(0,1fr);gap:18px;margin-top:2px;padding:14px 16px;border-color:rgba(224,226,217,.82);border-radius:20px;background:linear-gradient(135deg,rgba(255,254,250,.92),rgba(248,247,241,.72));box-shadow:0 14px 34px rgba(55,68,62,.045)}.essay-filter-summary{padding:3px 2px}.essay-filter-summary b{display:block;margin:4px 0 5px;color:var(--ink);font-size:16px}.essay-filter-summary small{display:block;color:#8a9691;font-size:11px}.essay-filter-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.essay-filter-card .pretty-select{margin-top:0}.essay-filter-card .pretty-select-trigger{min-height:40px;border-radius:12px;background:rgba(255,254,250,.86)}.essay-paper-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.essay-paper-card{position:relative;min-height:226px;padding:18px;border-color:rgba(225,228,219,.88);background:linear-gradient(180deg,#fffefa,#fbfaf5);box-shadow:0 13px 31px rgba(54,69,62,.055);overflow:hidden}.essay-paper-card:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:99px;background:linear-gradient(#e0a083,#6f9d90);opacity:.45}.essay-paper-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(53,95,85,.12);border-color:rgba(102,143,132,.34)}.essay-type-chip{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;background:#fbefe9;color:#b66d4c;font-size:11px;font-weight:650}.essay-card-body h2{margin:2px 0 8px;font-size:16px;line-height:1.45;letter-spacing:.1px}.essay-card-body p{min-height:54px;color:#65736e;line-height:1.8}.essay-meta-row{gap:6px}.essay-meta-row span,.essay-meta-row em{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;background:#f3f1e9;color:#7b8782;font-size:10px;font-style:normal}.essay-meta-row em{background:#e8f1ed;color:var(--green);font-weight:700}.essay-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:auto}.essay-card-stats span{display:block;padding:9px 10px;border-radius:13px;background:#f7f6f0}.essay-card-stats b{display:block;font-size:16px;line-height:1;color:var(--green)}.essay-card-stats small{display:block;margin-top:5px;color:#8b9691;font-size:10px}.essay-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:2px;padding-top:10px;border-top:1px solid rgba(226,228,220,.78);color:#668f84;font-size:11px;font-weight:700}.essay-card-foot i{font-style:normal;transition:transform .16s}.essay-paper-card:hover .essay-card-foot i{transform:translateX(3px)}.essay-star{height:28px;padding:0 10px;border-radius:999px;background:rgba(255,254,250,.78);font-weight:650}.essay-star.active{background:#e7f0eb}.essay-detail-card{border-color:rgba(225,228,219,.88);box-shadow:0 15px 36px rgba(54,69,62,.06)}.essay-detail-head{padding:4px 2px 16px;border-bottom:1px solid rgba(226,228,220,.78)}.essay-question-nav button{border-radius:13px}.essay-materials,.essay-question-panel,.essay-answer-panel{border-color:rgba(225,228,219,.88);box-shadow:0 8px 22px rgba(54,69,62,.035)}@media(max-width:1100px){.essay-filter-card{grid-template-columns:1fr}.essay-filter-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.bank-hero{align-items:flex-start}}@media(max-width:720px){#bank{padding-left:14px;padding-right:14px}.bank-hero{flex-direction:column}.bank-mode-tabs{width:100%;overflow:auto}.essay-filter-controls{grid-template-columns:1fr}.essay-paper-grid{grid-template-columns:1fr}.essay-paper-card{min-height:auto}}

/* Essay bank spacing refinement */
#bank .bank-page-shell{gap:20px!important}#bank .bank-mode-tabs{margin-bottom:10px!important}#bank .essay-filter-card{align-items:center!important;gap:24px!important;margin:8px 0 24px!important;padding:22px 24px 21px!important;border-radius:22px!important;box-shadow:0 16px 38px rgba(55,68,62,.055)!important}#bank .essay-filter-summary{padding:7px 8px 7px 0!important}#bank .essay-filter-controls{gap:14px!important}#bank .essay-filter-card .pretty-select-trigger,#bank .essay-filter-card select{min-height:44px;height:44px;border-radius:13px}#bank .essay-paper-grid{gap:18px!important;margin-top:2px!important}@media(max-width:720px){#bank .essay-filter-card{padding:18px!important;margin-bottom:20px!important}#bank .essay-filter-controls{gap:10px!important}}

.essay-pagination{display:flex;align-items:center;justify-content:center;gap:10px;margin:18px auto 4px;padding:10px 14px;width:max-content;max-width:100%;border:1px solid rgba(224,226,217,.78);border-radius:999px;background:rgba(255,254,250,.78);box-shadow:0 12px 30px rgba(55,68,62,.055);backdrop-filter:blur(10px)}.essay-page-numbers{display:flex;align-items:center;gap:6px}.essay-page-numbers span{color:#9aa59f;font-size:12px}.essay-page-btn{height:32px;min-width:32px;padding:0 12px;border:1px solid rgba(222,226,218,.86);border-radius:999px;background:#fffefa;color:#6d7c76;font-size:12px;font-weight:700;transition:background .16s,color .16s,border-color .16s,transform .16s}.essay-page-btn:hover:not(:disabled){background:#eef5f1;color:var(--green);border-color:#c6d8d0;transform:translateY(-1px)}.essay-page-btn.active{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 8px 18px rgba(53,95,85,.18)}.essay-page-btn:disabled{opacity:.42;cursor:not-allowed}.essay-pagination small{color:#84918b;font-size:11px;white-space:nowrap}.essay-loading-panel{display:flex;align-items:center;gap:18px;min-height:180px}.essay-loading-panel>div{display:grid;gap:6px}.essay-loading-panel b{font-size:18px;color:var(--green)}.essay-loading-panel span{color:var(--muted);font-size:13px}@media(max-width:720px){.essay-pagination{width:100%;flex-wrap:wrap;border-radius:18px}.essay-pagination small{width:100%;text-align:center}.essay-page-numbers{order:-1;width:100%;justify-content:center}}
/* Essay bank compact entrance */
#bank{padding-top:20px!important}
#bank .bank-page-shell{gap:14px!important}
#bank .bank-hero{display:none!important}
.bank-compact-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 8px}
#bank .bank-mode-tabs{margin:0!important}
#bank .bank-mode-tabs button[data-bank-tab="practice"],#bank .bank-mode-tabs button[data-bank-tab="wrong"]{display:none!important}
#bank .essay-search{width:min(360px,100%);height:40px}
#bank .essay-filter-card{align-items:center!important;gap:18px!important;margin:0 0 18px!important;padding:16px 18px!important;border-radius:20px!important;box-shadow:0 12px 30px rgba(55,68,62,.045)!important}
#bank .essay-filter-summary{padding:3px 6px 3px 0!important}
#bank .essay-filter-label{display:none!important}
#bank .essay-filter-summary b{font-size:17px!important;line-height:1.2}
#bank .essay-filter-summary small{margin-top:6px}
#bank .essay-filter-controls{gap:12px!important}
#bank .essay-filter-card .pretty-select-trigger,#bank .essay-filter-card select{min-height:40px!important;height:40px!important;border-radius:12px!important}
#bank .essay-paper-grid{gap:16px!important}
@media(max-width:720px){.bank-compact-toolbar{flex-direction:column;align-items:stretch;gap:10px}#bank .bank-mode-tabs{width:max-content;max-width:100%}#bank .essay-search{width:100%}#bank .essay-filter-card{padding:16px!important;margin-bottom:16px!important}}
