/* Reference-led visual layer. Layout routes, fields and timeline geometry stay in existing modules. */
:root{--green:#151515;--muted:var(--ink-secondary);--legacy-line:var(--line);--ui-canvas:var(--canvas);--ui-ink:var(--ink);--ui-secondary:#696969}
body{color:var(--ui-ink);background:var(--ui-canvas)}
.app,.workspace,.topbar,.bottom-area,.memo-screen,.knowledge-screen,.knowledge-category-screen{background:var(--ui-canvas)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--line-strong);outline-offset:3px}
button.primary,.review-save,.send{background:var(--ink);color:var(--inverse);border-radius:var(--radius-pill)}
button.secondary{background:var(--surface-sunken);color:var(--ink);border-radius:var(--radius-pill)}
.toast{background:var(--ink);box-shadow:none;border-radius:var(--radius-md)}
.chat-bubble{border-radius:var(--radius-lg);background:var(--surface)}
.chat-text{color:var(--ink)}.chat-footer{border-color:var(--line)}.chat-time-divider{color:var(--ink-secondary)}
.composer{background:var(--surface);border-color:transparent;box-shadow:none;border-radius:var(--radius-lg)}
.composer:focus-within{box-shadow:none}
.chat-menu{border-color:var(--line);border-radius:var(--radius-md);box-shadow:none}
.chat-menu button{border-radius:var(--radius-sm)}
.memo-filter,.memo-badge,.knowledge-more-tags{border-color:transparent;color:var(--ink-secondary);background:var(--surface-sunken)}
.memo-filter[aria-pressed="true"]{background:var(--ink);color:var(--inverse);border-color:var(--ink)}
.memo-card{background:var(--surface);border-color:transparent;border-radius:var(--radius-lg)}
.memo-card h2{color:var(--ink)}.memo-card p{color:var(--ink-secondary)}.memo-card time{color:var(--ink-secondary)}
.memo-search-field,.knowledge-search-field,.knowledge-category-header.searching label{background:var(--surface-sunken);border-color:transparent;border-radius:var(--radius-pill)}
.knowledge-category-card{background:var(--surface);border-radius:var(--radius-lg)}
.knowledge-category-copy strong{color:var(--ink)}.knowledge-category-copy small{color:var(--ink-secondary)}
.knowledge-symbol{background:var(--surface-sunken)!important;color:var(--ink)}
.knowledge-detail-screen,.knowledge-edit-screen,.memo-edit-screen,.knowledge-compose-screen{background:var(--surface);color:var(--ink)}
.knowledge-detail-header,.knowledge-edit-header,.memo-edit-header,.knowledge-compose-header{background:var(--surface)}
.knowledge-detail-header button,.knowledge-edit-header button,.memo-edit-header>button:first-child,.knowledge-compose-header>button:first-child{background:var(--surface-sunken);color:var(--ink)}
.knowledge-edit-header .knowledge-edit-save,.memo-full-save,.knowledge-full-save{background:var(--ink);color:var(--inverse);border-radius:var(--radius-pill);padding:0 var(--space-4);min-height:34px;font-size:var(--text-body)}
.knowledge-edit-header .knowledge-edit-save:disabled{background:var(--surface-sunken);color:var(--ink-secondary)}
.knowledge-edit-tags>span,.knowledge-edit-tags>button:not(:first-child),.knowledge-detail-meta>span{background:var(--surface-sunken);color:var(--ink-secondary)}
.memo-time-chip[aria-expanded="true"]{background:var(--surface-sunken);color:var(--ink)}
.memo-property-panel{background:var(--canvas);border-radius:var(--radius-md)}
.memo-property-panel .memo-compose-chip{border-radius:var(--radius-pill)}
.memo-complete-toggle{background:var(--surface-sunken);color:var(--ink)}
.knowledge-edit-toolbar{border-color:var(--line)}.knowledge-edit-toolbar button{color:var(--ink-secondary)}
.knowledge-detail-tabs,.knowledge-edit-tabs{border-color:var(--line)}
.knowledge-reference-card{background:var(--canvas);border-color:transparent;border-radius:var(--radius-md)}
.time-card,.health-card{background:var(--surface-sunken);border-radius:var(--radius-lg)}
.week-calendar{background:var(--canvas)}.week-days{border-color:var(--line)}.week-days [aria-current]>span{background:var(--ink)}
.diary-tick i{background:var(--surface-sunken)}.diary-tick time{color:var(--ink-secondary)}
.diary-event{border-radius:var(--radius-xs)}.diary-event strong{color:var(--ink)}.diary-event>span{color:var(--ink-secondary)}
.diary-todo-row,.review-pill{background:var(--surface-sunken);border-radius:var(--radius-md);color:var(--ink)}
.plan-reminder{background:var(--surface);border-color:var(--line);border-radius:var(--radius-md);color:var(--ink)}
.plan-reminder>svg:first-child{color:var(--ink)}
.review-form textarea{background:var(--surface-sunken);border-color:transparent;border-radius:var(--radius-md)}
.settings-group,.personal-overview,.personal-modules,.personal-tools{background:var(--surface);border-radius:var(--radius-lg)}
.settings-row,.personal-modules>div,.personal-tools>button{border-color:var(--line)}
.settings-content,.personal-drawer{background:var(--canvas)}
.dialog-head h2{color:var(--ink);font-size:var(--text-title);font-weight:650}
dialog{background:var(--surface);border-radius:var(--radius-lg);box-shadow:none}
dialog::backdrop{background:#0006}
dialog .dialog-head .icon-button{background:var(--surface-sunken);color:var(--ink)}
dialog textarea,dialog input,dialog select{background:var(--surface-sunken);border-color:transparent;border-radius:var(--radius-md);color:var(--ink)}
dialog label{color:var(--ink-secondary)}.dialog-actions{gap:var(--space-3)}
.inline-choice button{background:var(--surface-sunken);border-color:transparent;border-radius:var(--radius-pill);color:var(--ink-secondary)}
.inline-choice button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--inverse)}
.planner-range-label{color:var(--ink-secondary)}
@media(min-width:0px){
 .workspace,.topbar,.bottom-area,.quick-nav{background:var(--canvas)}
 .topbar,.bottom-area,.quick-nav{border-color:var(--line)}
 .quick-nav .nav-button{color:var(--ink-secondary)}.quick-nav .nav-button.active{color:var(--ink)}
 .quick-nav .nav-button.active .nav-icon{background:var(--ink);color:var(--inverse)}
 .memo-toolbar,.memo-header,.knowledge-header,.knowledge-category-header{background:var(--canvas)}
 .memo-card{border-radius:var(--radius-lg)}.memo-badge{background:var(--surface-sunken)}
 dialog{border-radius:var(--radius-lg) var(--radius-lg) 0 0}
 .screen-header{background:var(--canvas)}
}
@media(min-width:761px){
 .desktop-header{background:var(--canvas);border-color:var(--line)}
 .desktop-brand{color:var(--ink)}
 .desktop-header nav{align-items:center;gap:var(--space-3)}
 .desktop-header nav button{height:36px;padding:0 var(--space-5);border-radius:var(--radius-pill);color:var(--ink-secondary)}
 .desktop-header nav button[aria-current="page"]{color:var(--inverse);background:var(--ink);font-weight:550}
 .desktop-header nav button[aria-current="page"]:after{display:none}
 .desktop-account{background:var(--surface-sunken);color:var(--ink);border-radius:50%}
 .desktop-account:hover{background:var(--surface-sunken)}
 .planner-workspace>.memo-screen{background:var(--canvas);border-color:var(--line)}
 .planner-workspace .memo-toolbar{background:var(--canvas)}
 .planner-workspace .memo-filter{background:transparent;color:var(--ink-secondary)}
 .planner-workspace .memo-filter[aria-pressed="true"]{background:var(--ink);color:var(--inverse)}
 .planner-workspace .memo-list{padding-top:var(--space-2)}
 .planner-workspace .memo-swipe-shell{margin-bottom:var(--space-3);border-radius:var(--radius-md)}
 .planner-workspace .memo-card{background:var(--surface);border:0;border-radius:var(--radius-md)}
 .planner-workspace .memo-card-open{padding:var(--space-4) var(--space-4) 48px}
 .planner-workspace .memo-card h2{color:var(--ink);font-weight:600}
 .planner-workspace .memo-card p{color:var(--ink-secondary)}
 .planner-workspace .memo-arrange{right:12px;bottom:10px;color:var(--ink);background:var(--surface-sunken);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3)}
 .planner-workspace .memo-arrange:hover{background:var(--surface-sunken)}
 .planner-heading,.planner-controls{background:var(--canvas)}
 .planner-heading-actions{color:var(--ink-secondary)}
 .planner-heading-actions button{color:var(--ink);background:var(--surface);border-radius:var(--radius-pill)}
 .planner-controls{border-color:var(--line)}
 .planner-controls button{background:var(--surface);color:var(--ink);border-color:transparent;border-radius:var(--radius-pill)}
 .planner-controls input{color:var(--ink)}
 .planner-calendar{background:var(--surface)}
 .planner-summary{border-color:var(--line)}.planner-summary summary{color:var(--ink-secondary)}.planner-summary summary>span{color:var(--ink-secondary)}
 .planner-summary-body{background:var(--canvas)}.planner-pending{border-color:var(--line);color:var(--ink-secondary)}
 .planner-pending button{color:var(--ink)}
 .planner-calendar .diary-event{border-radius:var(--radius-xs)}
 .planner-drag-preview{background:#eeeeeedc;border-color:var(--ink);color:var(--ink);border-radius:var(--radius-xs)}
 .planner-calendar .diary-event em{background:#ffffffc9}
 body[data-page^="knowledge"] .workspace{background:var(--canvas)}
 .knowledge-screen,.knowledge-category-screen{background:var(--canvas)}
 .knowledge-header,.knowledge-category-header{background:var(--canvas)}
}
.knowledge-home-header{background:var(--canvas)}
body[data-page="knowledge"] .workspace,body[data-page="knowledge-category"] .workspace{background:var(--canvas)}
@media(min-width:761px){.planner-workspace .memo-swipe-shell{flex-shrink:0;margin-bottom:0}}
.composer-date-preview{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-2);color:var(--ink-secondary);font-size:var(--text-caption);line-height:18px}
.composer-date-preview span{min-width:0;overflow-wrap:anywhere}
.composer-date-preview button{flex-shrink:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink);font-size:var(--text-caption)}
.composer-date-preview.has-date-error{color:#9b423b}
.memo-swipe-hint{margin:0;padding:var(--space-1) var(--space-4) var(--space-2);color:var(--ink-secondary);font-size:var(--text-micro);line-height:17px}
@media(min-width:761px){.memo-swipe-hint{display:none}}
.memo-swipe-actions button{min-height:44px}
.desktop-record-menu{position:fixed;z-index:100;width:198px;padding:var(--space-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:none}
.desktop-record-menu button{width:100%;display:flex;align-items:center;gap:var(--space-3);min-height:39px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:left;font-size:var(--text-caption);color:var(--ink)}
.desktop-record-menu button:hover,.desktop-record-menu button:focus{background:var(--surface-sunken);outline:0}
.desktop-record-menu button.danger{color:#b3443a}.desktop-record-menu button.danger:hover{background:#fbf0ee}
.desktop-record-menu svg{width:16px;height:16px;flex-shrink:0}
.desktop-record-details h3{font-size:var(--text-heading);line-height:27px;overflow-wrap:anywhere;margin:var(--space-5) 0 var(--space-2)}
.desktop-record-details .detail-meta{font-size:var(--text-caption);color:var(--ink-secondary);line-height:20px}
.desktop-record-details .detail-copy{font-size:var(--text-body);line-height:24px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:45vh;overflow:auto}
@media(min-width:761px){.planner-workspace .memo-swipe-actions{display:none}.planner-workspace .memo-swipe-shell.open .memo-card{transform:none}}
