*{box-sizing:border-box}body{margin:0;background:#eeecef;color:#453e4b;font:16px/1.55 system-ui,sans-serif}header{display:flex;justify-content:space-between;padding:22px;background:#f8f6f8;border-bottom:1px solid #d8cfd9}header span,p{color:#746b79}main,#login{padding:24px}#login{max-width:440px;margin:40px auto;background:#f8f6f8;border-radius:12px}nav,.row{display:flex;gap:10px;flex-wrap:wrap}.layout{display:grid;grid-template-columns:220px minmax(260px,1fr) minmax(260px,1fr);gap:22px;margin-top:22px}section,aside{background:#f8f6f8;border:1px solid #d8cfd9;border-radius:12px;padding:18px;min-width:0}button{cursor:pointer;background:#e7dfe9;border:1px solid #c8b9ce;border-radius:7px;padding:8px 12px;color:#453e4b;font:inherit}button:disabled{opacity:.5;cursor:default}label{display:block;margin:10px 0}input,textarea,select{display:block;width:100%;font:inherit;padding:8px;border:1px solid #d8cfd9;border-radius:6px;background:#fcfafc;color:#453e4b}input[type=checkbox]{display:inline;width:auto}textarea{min-height:85px}h1{font-size:24px}h2{font-size:20px}h3{font-size:18px}.task{border-bottom:1px solid #d8cfd9;padding:12px 0;overflow-wrap:anywhere}.task p{white-space:pre-wrap;color:#453e4b}#projects button{display:block;width:100%;margin-bottom:8px;text-align:left}#notice{padding:0 24px;min-height:24px}#weekly{font-size:12pt}#task-editor{margin-top:20px}button.selected{background:#d6c9dc}@media(max-width:850px){.layout{grid-template-columns:1fr}}[hidden]{display:none!important}
.timeline-panel{grid-column:1/-1;min-width:0}.timeline-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.timeline-toolbar h2{margin:0}.timeline-toolbar label{margin:0;font-size:13px}.timeline-toolbar input{padding:4px 8px}.timeline-toolbar .row{align-items:center}.timeline-summary{font-size:13px;margin:10px 0}.timeline-scroll{overflow-x:auto;border:1px solid #d8cfd9;border-radius:9px}.timeline-table{width:100%;min-width:890px;table-layout:fixed;border-collapse:collapse;font-size:13px}.timeline-name-col{width:200px}.timeline-table th,.timeline-table td{border-right:1px solid #dfd6e0;border-bottom:1px solid #dfd6e0;padding:0;text-align:center;height:34px;font-weight:400}.timeline-table .timeline-name{background:#f4f0f5;text-align:left;padding:8px 10px;position:sticky;left:0;z-index:1}.timeline-month{background:#e7dfe9;text-align:left!important;padding:8px 14px!important;letter-spacing:1px}.timeline-day{background:#ece5ef;font-size:12px}.timeline-table .timeline-today{background:#eadbe2}.timeline-table th.timeline-today{box-shadow:inset 0 -3px #796381}.timeline-label{padding:0;background:none;border:0;text-align:left;width:100%;font-size:14px;overflow-wrap:anywhere}.timeline-dot{display:block;border:0;background:none;color:#796381;font-size:15px;width:100%;height:34px;padding:0;line-height:1}.timeline-dot:hover,.timeline-dot:focus-visible{background:#dccbdd}.timeline-empty{padding:24px!important;text-align:left!important;color:#746b79}.timeline-month-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;margin-top:12px}.timeline-month-links button{font-size:13px;padding:4px 8px}@media(min-width:1100px){.timeline-table{min-width:0}}@media(pointer:coarse){.timeline-dot{height:44px}}
/* 莫蘭迪紫、灰、粉配色，工作內容 12pt。 */
:root{--ink:#453e4b;--blue:#e7dfe9;--lilac:#e5dce9;--sage:#e7dfe9;--surface:#f8f6f8}body{font-size:15px}header b{font-size:28px;letter-spacing:2px}main{max-width:1800px;margin:auto}.main-nav{align-items:center;margin-bottom:24px}.main-nav select{width:auto;margin-right:auto}.work-toolbar{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.work-toolbar select{width:240px}.row{align-items:center}.row input,.row select{width:auto}.row label{margin:0}.selected{background:#d6c9dc!important}#project-view,#weekly-view{background:transparent;border:0;padding:0}.project-grid{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:18px;margin-top:22px}.project-grid>section:first-child{background:var(--sage)}.project-grid>section:nth-child(2){background:var(--surface)}.project-grid>section:last-child{background:var(--lilac)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title h2{margin:4px 0}details{margin:12px 0;background:#ffffff66;border-radius:8px;padding:12px}summary{cursor:pointer;font-weight:600}.record{padding:12px 0;border-bottom:1px solid #cfc1d044;overflow-wrap:anywhere}.record button{font-size:13px;margin:4px}.record p{margin:5px 0;color:var(--ink)}a{color:#72557f;overflow-wrap:anywhere}.pre{white-space:pre-wrap}.warning{background:#ead8d5;padding:12px;color:#733b35}.weekly-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(450px,1.4fr);gap:20px;margin-top:20px}.weekly-layout>section{min-width:0}#slide-preview{margin-top:14px}#all-slides{display:none}.slide{background:linear-gradient(125deg,#e4e0e7,#eee5ed 65%,#ecdce2);border:1px solid #d3c6d5;border-radius:16px;padding:30px;color:#453e4b;min-height:480px;overflow-wrap:anywhere}.slide h1{font-size:24pt;line-height:1.3;margin:12px 0 28px}.slide h2{font-size:12pt;margin:0 0 18px}.slide-category{font-size:12px;letter-spacing:2px;color:#7c6286}.slide-columns{display:flex;gap:26px;align-items:stretch}.slide-columns aside{width:30%;flex-shrink:0;background:#faf7fbab;border:0;font-size:12pt;padding:20px}.slide-columns aside p{white-space:pre-wrap;font-size:12pt;color:var(--ink)}.slide-work{flex:1;min-width:0;font-size:12pt}.slide-item{margin:0 0 16px;white-space:pre-wrap}.slide-item p{margin:0 0 5px;color:var(--ink)}.slide-item small{display:block;font-size:12pt;color:#746477}dialog{border:1px solid #cbbccf;border-radius:16px;background:#f5f0f6;color:var(--ink);padding:24px;width:min(620px,95vw);max-height:90vh}dialog::backdrop{background:#40344688}#edit-fields textarea{min-height:130px}#edit-error{color:#8e3939}#present-note{min-height:180px}#pending-files{display:grid;gap:12px}#expense-totals,#course-balance{padding:20px 0;font-size:18px}#expenses details{background:#f8f6f8}.projection{background:#302a35}.projection main{padding:14px;max-width:none}.projection .slide{min-height:calc(100vh - 110px);padding:5vh 5vw}.projection nav{padding:8px;color:#ddd}.projection:fullscreen nav{display:none}.projection:fullscreen .slide{min-height:calc(100vh - 28px)}@media(max-width:1000px){.project-grid{grid-template-columns:1fr}.weekly-layout{grid-template-columns:1fr}.slide h1{font-size:20pt}}@media(max-width:600px){main{padding:12px}.slide{padding:18px}.slide-columns{gap:12px;flex-direction:column}.slide-columns aside{width:100%}.main-nav button{font-size:13px}}@media print{@page{size:A4 landscape;margin:8mm}body{background:white}header,#notice,.main-nav,.work-toolbar,#project-view,#weekly-view>.row,.weekly-layout>section:first-child,.weekly-layout>section:last-child>.row,#slide-preview,#courses-view,#expenses-view,#settings-view,dialog{display:none!important}main,#workspace,#work-panels,#weekly-view,.weekly-layout,.weekly-layout>section:last-child,#all-slides{display:block!important;padding:0;margin:0;max-width:none;border:0;background:none}#all-slides .slide{break-after:page;break-inside:avoid;min-height:180mm;border-radius:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.slide-columns{flex-direction:row}.slide-columns aside{width:30%}}

/* Shared navigation and work surfaces. Course cards retain their own pink theme. */
:root{--ink:#453e4b;--blue:#e7dfe9;--lilac:#e8e3e9;--sage:#e5dce9;--surface:#f8f6f8;--accent:#796184;--rose:#e8d5de}
header{background:#f7f3f8;border-bottom-color:#d8cbdc}header b{color:#796184}input[type=checkbox]{accent-color:var(--accent)}button:hover:not(:disabled){border-color:#a58aaf}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #947b9f;outline-offset:2px}
.main-nav button.selected,#categories button.selected{background:#796184!important;color:#fff;border-color:#796184}.main-nav button{background:#f7f3f8;border-color:#d8cbdc}.main-nav #space{background:#e8dce9;border-color:#c8b5ce;color:#634a70}
#login{border:1px solid #ded1e3;box-shadow:0 12px 40px #6952750c}#login h1{color:#71567e}#login button,#add-project,#add-task,#save-draft,#save-present-note,#edit-integrations,#edit-form button[type=submit]{background:#796184;color:#fff;border-color:#796184}
.project-grid>section:first-child{background:#e9e0ed}.project-grid>section:nth-child(2){background:#eee0e6}.project-grid>section:last-child{background:#e8e5ea}.section-title h2{color:#675271}#project-title{color:#675271}
.weekly-layout>section:first-child{background:#f1e8ee}.weekly-layout>section:last-child{background:#f6f2f7}.slide-category{color:#795c85}.slide-columns aside{background:#faf7fbab}.slide h1{color:#5c4669}.slide h2{color:#755e80}
#settings-view{background:#f6f2f7;border-color:#d8cbdc}#settings-view h1{color:#71567e}#integration-status{background:#eee7f1;border:1px solid #dfd2e5;border-radius:10px;padding:10px 18px;margin-bottom:18px}#integration-status p{color:#675970}#pair-result:not(:empty){background:#eee0e7;color:#6e4d62;padding:14px;border-radius:10px}
