@font-face{font-family:system;src:local('Inter'),local('Segoe UI')}*{box-sizing:border-box} :root{--bg:#f7f8fa;--paper:#fff;--ink:#233b40;--muted:#7b888c;--line:#e5eaeb;--teal:#25766e;--teal-dark:#185c56;--soft:#eaf3f0;--orange:#b4704a;--red:#ba5c51;--radius:12px}body{margin:0;color:var(--ink);background:var(--bg);font-family:system,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}h1,h2,h3,p{margin-top:0}h1{font-size:32px;line-height:1.25;letter-spacing:-1px;font-weight:650;margin-bottom:10px}h2{font-size:18px;letter-spacing:-.35px;font-weight:650;margin-bottom:12px}h3{font-size:15px;font-weight:600;margin-bottom:8px}p{margin-bottom:12px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #70aaa4;outline-offset:3px}::selection{background:#d4e9e2}input,select,textarea{min-width:0;max-width:100%;border:1px solid #dfe5e5;border-radius:7px;padding:10px 12px;color:var(--ink);background:#fff}input::placeholder,textarea::placeholder{color:#939e9f}textarea{resize:vertical;line-height:1.7}label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:550;margin:16px 0}label .muted{font-weight:400}select[multiple]{min-height:100px}input[type=checkbox]{accent-color:var(--teal);width:17px;height:17px}.checkbox-label{flex-direction:row;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;min-height:40px;padding:9px 16px;background:white;border:1px solid #dce4e3;color:var(--ink);font-size:13px;font-weight:550;border-radius:7px;transition:background .15s}.button:hover{background:#f0f5f3}.button.primary{background:var(--teal);border-color:var(--teal);color:#fff}.button.primary:hover{background:var(--teal-dark)}.button.small{font-size:12px;min-height:34px;padding:6px 12px}.text-button{background:none;border:0;padding:4px 0;color:var(--teal);font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:5px}.text-button:hover{text-decoration:underline}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;background:none;border-radius:6px;font-size:24px;color:var(--muted)}.icon-button:hover{background:var(--soft);color:var(--teal)}.sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:#fff;border-right:1px solid var(--line);padding:30px 20px 0;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:13px;font-size:16px;font-weight:650;line-height:1.3;margin:0 10px 35px;letter-spacing:-.2px}.brand-sub{display:block;font-weight:400;color:var(--muted);font-size:13px;letter-spacing:1.3px}.brand-icon{display:inline-flex;width:43px;height:46px;border-radius:11px;align-items:center;justify-content:center;background:var(--teal);color:#fff;font-family:Georgia,serif;font-size:40px;line-height:1}.brand-icon span{color:#d3dfb7}.school-label{margin:0 12px 14px;font-size:9px;letter-spacing:1.1px;color:#9aa4a7;font-weight:600;display:flex;justify-content:space-between}.school-label span{letter-spacing:0}.sidebar nav{display:grid;gap:5px}.sidebar nav a{display:flex;align-items:center;padding:10px 13px;gap:13px;font-size:13px;font-weight:500;color:#65767a;border-radius:7px}.sidebar nav a.active{background:var(--soft);color:var(--teal);font-weight:650}.sidebar nav a:hover{background:#f4f7f6}.nav-icon{font-size:20px;font-weight:400;line-height:1;width:22px;text-align:center}.count{margin-left:auto;background:#e9eded;color:#6b7b7b;border-radius:5px;padding:0 6px;font-size:10px}.side-projects{padding:29px 12px 12px;border-top:1px solid var(--line);margin-top:27px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:650;color:var(--muted);margin-bottom:11px}.side-projects .eyebrow{font-size:9px}.side-projects a{display:flex;align-items:center;gap:9px;font-size:12px;color:#697c7d;padding:7px 0;line-height:1.35}.project-dot{width:6px;height:6px;border-radius:2px;background:#8db5a9;flex-shrink:0}.side-projects a:nth-of-type(2n) .project-dot{background:#caac84}.sidebar-bottom{margin-top:auto;padding:18px 0}.sidebar-bottom>a{display:block;font-size:12px;padding:10px 13px;color:#6f7d82}.profile{display:flex;align-items:center;gap:9px;margin-top:15px;padding:20px 0 0;border-top:1px solid var(--line)}.avatar{display:inline-flex;align-items:center;justify-content:center;background:#eef1e7;color:#778862;width:34px;height:34px;border-radius:50%;font-size:11px;font-weight:650;flex-shrink:0}.profile strong{display:block;font-size:11px}.profile div>span{font-size:9px;color:var(--muted)}.profile form{margin-left:auto}.profile .icon-button{width:24px;font-size:20px}.workspace{margin-left:246px;min-height:100vh}.topbar{height:83px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px;padding:0 38px;background:#fff}.breadcrumb{font-size:12px;color:#738286;white-space:nowrap}.breadcrumb span{margin:0 12px;color:#bbc2c4}.global-search{margin-left:auto;display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:7px;background:#fafbfc;padding:4px 9px;max-width:290px}.global-search>span{font-size:22px;color:#929fa2;line-height:1}.global-search input{padding:4px;border:0;background:none;font-size:11px;width:195px;outline:none}.global-search kbd{border:1px solid #e0e5e6;background:#fff;padding:0 5px;border-radius:3px;color:#9ba6a8;font-size:10px}.main{max-width:1600px;padding:37px 38px 25px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.page-heading .eyebrow{color:#8b999c;margin-bottom:10px}.subtitle{font-size:13px;color:#839195;line-height:1.7;margin:0}.date-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 0 26px;border-bottom:1px solid var(--line);margin-bottom:25px}.day-label{display:flex;align-items:center;gap:15px}.date-tile{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#fff;border:1px solid var(--line);width:52px;height:58px;border-radius:9px;font-size:23px;font-weight:600;line-height:1.1}.date-tile small{font-size:9px;color:#8b979a;letter-spacing:1px;margin-top:6px;font-weight:500}.day-label h2{margin:0 0 1px;font-size:19px}.day-label>div>span{font-size:11px;color:var(--muted)}.pill{display:inline-flex;align-items:center;background:#edf3f0;border-radius:5px;padding:3px 8px;font-size:10px;color:#60827b;line-height:1.6;max-width:100%;overflow-wrap:anywhere}.today-pill{margin-left:5px;font-size:10px}.date-controls{display:flex;align-items:center;gap:7px}.date-controls input{font-size:11px;padding:6px 8px;background:transparent;border-color:transparent}.date-controls .button{margin-left:9px}.date-controls .icon-button{border:1px solid var(--line);background:#fff;font-size:21px;width:30px;height:30px}.cockpit-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:25px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:21px;overflow:hidden}.panel-heading{padding:21px 23px 0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.panel-heading h2{display:flex;align-items:center;gap:9px;margin:0;font-size:15px}.section-icon{color:#7d9792;font-size:19px;font-weight:400;width:20px;text-align:center}.number{font-size:10px;line-height:1.4;display:inline-block;color:#92a0a2;background:#f0f3f4;padding:2px 6px;border-radius:5px;margin-left:2px;font-weight:500}.panel-caption{font-size:10px;color:#9aa6a8;margin:-5px 23px 17px 53px}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 25px 35px;color:#98a5a6;gap:7px}.empty-icon{font-size:24px;line-height:1.2;margin-bottom:5px;color:#a9bcb6}.empty strong{font-size:12px;font-weight:500;color:#849492}.empty p{font-size:11px;margin:0;max-width:330px;color:#9aa6a6}.event{display:flex;align-items:flex-start;gap:16px;margin:0 23px;padding:17px 0;border-top:1px solid #f0f3f3}.event-time{width:68px;flex-shrink:0;font-size:13px;font-weight:600}.event-time small{display:block;font-size:10px;color:#9ba7a9;font-weight:400}.event-body{padding-left:13px;border-left:3px solid #91b7a5;flex:1;min-width:0}.event-body strong{display:block;font-size:12px}.event-body>span{font-size:10px;color:#91a0a2}.color-1 .event-body{border-color:#d5b77e}.color-2 .event-body{border-color:#9baed2}.color-3 .event-body{border-color:#bd9eae}.color-4 .event-body{border-color:#97bbbc}.event-actions{display:flex;gap:15px;margin-top:5px}.event-actions .text-button{font-size:10px}.journal-panel>form{padding:0 23px 18px}.journal-panel textarea{background:#fbfcfb;border-color:#edf0ed;width:100%;font-size:12px;min-height:123px}.journal-footer{display:flex;gap:9px;align-items:center;margin-top:9px}.journal-footer select{font-size:10px;padding:6px 8px;border-color:#e7edeb;max-width:180px;color:#85958f}.journal-footer>span{margin-left:auto;font-size:9px}.journal-footer .button{font-size:10px}.entry-card{padding:20px 24px;border-top:1px solid #edf1ef}.panel>.entry-card:first-child{border-top:0}.entry-meta{display:flex;align-items:center;gap:10px;color:#95a2a4;font-size:10px;flex-wrap:wrap;margin-bottom:7px}.type-label{font-size:10px;color:#66877c}.type-mail_in{color:#6388a5}.type-mail_out{color:#9a84ae}.type-phone{color:#b4946c}.entry-card h3{font-size:14px;margin:0 0 6px}.entry-card h3 a:hover{color:var(--teal)}.entry-card .small{margin-bottom:7px;font-size:11px}.excerpt{font-size:12px;color:#829092;white-space:pre-line;overflow-wrap:anywhere;line-height:1.7;margin-bottom:12px}.chips{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.tag{font-size:10px;color:#a3aeb0}.tag:hover{color:var(--teal)}.communication-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:7px 23px 20px}.communication-columns>div+div{border-left:1px solid var(--line);padding-left:20px}.communication-columns .eyebrow{font-size:9px;color:#92a09d;margin-bottom:14px}.task-group{padding:12px 23px 10px}.group-heading{font-size:11px;letter-spacing:.1px;display:flex;align-items:center;gap:7px;color:#718486;font-weight:600;margin-bottom:8px}.group-heading .number{margin-left:auto;font-size:9px}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--red)}.overdue{color:var(--red)!important}.task-row{display:flex;gap:11px;padding:13px 0;border-bottom:1px solid #eef2f1;align-items:flex-start}.task-row:last-child{border-bottom:0}.task-check{margin-top:3px;background:white;border:1px solid #cdd9d6;border-radius:4px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;font-size:11px;color:#fff}.task-check:hover{border-color:var(--teal);background:var(--soft)}.task-check.checked{background:var(--teal);border-color:var(--teal)}.task-content{min-width:0;flex:1}.task-text{border:0;background:none;text-align:left;color:#50666a;padding:0;font-size:12px;line-height:1.6;display:block;overflow-wrap:anywhere}.task-text:hover{color:var(--teal)}.task-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:9px;color:#9dabad;margin-top:5px}.task-meta>a:hover{color:var(--teal)}.completed .task-text{text-decoration:line-through;color:#a2adae}.group-empty{font-size:11px;color:#a2aead;padding:9px 0;margin-bottom:0}.panel-link{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 23px;font-size:11px;color:#738783}.panel-link:hover{background:#f8fbf9}.panel-link span{color:var(--teal)}.inbox-summary{border:1px solid #e0e8dc;background:#f0f4eb;padding:24px;border-radius:var(--radius);margin-bottom:22px}.inbox-summary .eyebrow{font-size:8px;letter-spacing:1.2px;color:#8a9c7e}.inbox-summary h2{font-size:17px;line-height:1.45;color:#596c50;margin-bottom:10px}.inbox-summary p{font-size:11px;line-height:1.8;color:#86927e}.inbox-summary .button{font-size:10px;background:#fff;border-color:#dfe7d9;color:#738667;margin-top:4px}.inbox-summary .button span{margin-left:25px}.quiet-note{display:flex;gap:12px;padding:0 10px;color:#a0aeaa;font-size:10px;line-height:1.8}.quiet-note>span{font-size:22px;color:#b8c8bc}.page-footer{display:flex;justify-content:space-between;margin:0 38px;padding:18px 0 23px;border-top:1px solid var(--line);color:#aab4b6;font-size:9px}.reminder{display:flex;align-items:center;gap:15px;border:1px solid #e5dec7;background:#fbf7ec;border-radius:10px;padding:15px 20px;margin-bottom:22px}.reminder-icon{color:#b6a06f;font-size:25px}.reminder strong{font-size:13px}.reminder p{font-size:11px;color:#9d947d;margin:3px 0 0}.reminder form{margin-left:auto}.detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:25px}.padded{padding:24px}.metadata{display:grid;grid-template-columns:80px 1fr;font-size:12px;gap:8px;margin:0 0 20px}.metadata dt{color:var(--muted)}.metadata dd{margin:0;overflow-wrap:anywhere}.markdown{font-size:14px;overflow-wrap:anywhere}.markdown h1{font-size:25px}.markdown h2{font-size:21px}.markdown a{text-decoration:underline;color:var(--teal)}.markdown pre{padding:14px;background:#f2f5f4;border-radius:6px;overflow:auto}.markdown code{font-size:12px}.markdown table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}.markdown td,.markdown th{padding:8px;border:1px solid var(--line)}.markdown blockquote{border-left:3px solid #adc5b7;margin-left:0;padding-left:15px;color:var(--muted)}#entry-body{margin:25px 0}.attachment{display:flex;gap:10px;padding:12px 23px;border-top:1px solid var(--line);font-size:12px;overflow-wrap:anywhere}.attachment>span{font-size:20px;color:var(--teal)}.attachment small{display:block;color:var(--muted);font-size:10px}.back-link{display:inline-block;color:var(--muted);font-size:12px;margin-bottom:18px}.button-group{display:flex;gap:8px}.section-heading{display:flex;justify-content:space-between;align-items:center}.section-heading span{font-size:12px}.task-list{padding:5px 24px}.task-list .task-row{padding:18px 0}.task-list .task-text{font-size:14px}.task-list .task-meta{font-size:11px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:25px}.tabs a{font-size:13px;color:var(--muted);padding:10px 2px;border-bottom:2px solid transparent}.tabs a.selected{border-color:var(--teal);color:var(--teal)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card-grid .panel{margin:0}.card-grid>.empty{grid-column:1/-1;min-height:260px}.project-card{padding:25px}.project-card:hover{border-color:#b8cec4;box-shadow:0 5px 15px #1e453208}.project-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.folder-icon{font-size:28px;color:#82aa97}.project-card h2{font-size:18px}.project-card p{font-size:12px;color:#8d9a9b;min-height:56px;white-space:pre-line}.project-card-stats{border-top:1px solid var(--line);padding-top:15px;font-size:10px;color:#91a09f;display:flex;gap:12px}.project-card-stats>span:last-child{margin-left:auto;color:var(--teal)}.filter-bar{display:flex;gap:10px;margin-bottom:23px}.filter-bar>input:first-of-type{flex:1}.filter-bar input,.filter-bar select{font-size:12px}.filter-bar input[name=tag]{max-width:180px}.assignment{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:15px 24px;border-top:1px solid var(--line);background:#fbfcfb}.assignment select{font-size:12px;max-width:240px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;font-size:12px}.contact-header{display:flex;justify-content:space-between;margin-bottom:20px}.process-card{padding:24px}.template-tasks{list-style:none;padding:0;font-size:12px;color:#7f9090}.template-tasks li{padding:8px 0;border-bottom:1px solid #f0f3f2}.template-tasks li:before{content:'□';margin-right:10px;color:#a6b7b0}.process-footer{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:24px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.retention-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 22px}.save-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.status-box{background:var(--soft);border-radius:7px;padding:12px;font-size:11px;color:var(--teal)}.status-box small{display:block;margin-top:4px}.security-line{display:flex;gap:10px;font-size:12px;margin-bottom:12px}.security-line span{color:var(--teal)}.auth-main{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:35px 20px;flex-direction:column;background:radial-gradient(ellipse at top left,#e9f1eb,transparent 65%)}.auth-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:42px;width:450px;max-width:100%;box-shadow:0 20px 70px #294d3610}.auth-card .brand-icon{margin-bottom:24px}.auth-card h1{font-size:29px}.auth-card .eyebrow{font-size:9px}.auth-card .subtitle{margin-bottom:25px}.auth-card form+.small{margin-top:20px;margin-bottom:0;text-align:center;font-size:10px}.auth-card label{font-size:12px}.auth-card .full-width{margin-top:10px}.setup-card{width:520px}.full-width{width:100%}#qr-area{text-align:center;border:1px solid var(--line);border-radius:8px;margin-top:18px;padding:15px}#qr-image{max-width:210px;width:100%;height:auto}#totp-secret{overflow-wrap:anywhere;font-size:12px}.notice,.form-error{padding:15px 18px;border-radius:8px;background:#edf4ee;color:#507b64;font-size:13px;margin-bottom:18px}.notice.error,.form-error{background:#faede9;color:#a3544c}.warning{background:#fbf1da;color:#aa8341}.danger{color:var(--red)}.small{font-size:12px}.muted{color:var(--muted)}.wrap{overflow-wrap:anywhere}dialog{border:1px solid #dce5e1;padding:28px;border-radius:14px;width:680px;max-width:calc(100% - 28px);max-height:90dvh;color:var(--ink);box-shadow:0 25px 100px #142e3a30}dialog::backdrop{background:#18393466;backdrop-filter:blur(3px)}#task-dialog,#person-dialog,#project-dialog,#process-dialog,#close-dialog{width:520px}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-heading h2{margin:0;font-size:22px}.dialog-heading .eyebrow{margin:0 0 5px;font-size:9px}.dialog-heading .icon-button{font-size:27px}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:25px;border-top:1px solid var(--line);padding-top:20px}.form-row{display:flex;gap:15px}.form-row>label{flex:1;min-width:0}details{margin-top:15px}summary{font-size:12px;color:var(--teal);cursor:pointer}.task-list summary{margin:10px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#244b42;color:#fff;padding:12px 22px;border-radius:8px;z-index:100;font-size:13px;max-width:90vw;box-shadow:0 5px 20px #18382822}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(min-width:1600px){.main{padding-top:45px}.cockpit-grid{grid-template-columns:minmax(0,1.8fr) minmax(330px,1fr)}h1{font-size:35px}}
@media(max-width:1200px){.sidebar{width:214px;padding:24px 15px 0}.workspace{margin-left:214px}.brand{margin-left:6px;font-size:14px}.brand-icon{width:38px;height:41px;font-size:35px}.main{padding:28px 25px}.topbar{padding:0 25px;gap:15px}.global-search{max-width:225px}.global-search input{width:155px}.breadcrumb{font-size:11px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cockpit-grid{gap:18px;grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr)}.panel-heading{padding:18px 18px 0}.task-group{padding-left:18px;padding-right:18px}.journal-panel>form{padding:0 18px 18px}.journal-footer>span{display:none}.journal-footer .button{margin-left:auto}.communication-columns{grid-template-columns:1fr;gap:10px}.communication-columns>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:15px}.page-footer{margin:0 25px}.profile div>span{font-size:8px}.profile .avatar{width:28px;height:28px}.side-projects{padding-top:22px}}
@media(max-width:1000px){.sidebar{width:185px;padding:24px 10px 0}.workspace{margin-left:185px}.brand{gap:9px;font-size:12px}.brand-sub{font-size:11px}.sidebar nav a{padding:10px;gap:9px;font-size:12px}.school-label{font-size:8px;margin-left:10px}.school-label span{display:none}.side-projects{padding-left:10px}.topbar{height:72px;padding:0 22px}.breadcrumb{display:none}.global-search{margin-left:0;margin-right:auto}.main{padding:27px 22px}.cockpit-grid{grid-template-columns:1fr}.cockpit-right{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.tasks-panel{grid-column:1/-1}.quiet-note{align-self:center}.date-toolbar{gap:8px}.page-heading{align-items:flex-start}.page-heading>.button{font-size:11px;padding:7px 11px}.page-heading h1{font-size:28px}.detail-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.retention-grid{grid-template-columns:repeat(2,1fr)}.filter-bar{flex-wrap:wrap}.filter-bar>input:first-of-type{flex-basis:45%}.profile div>span{display:none}.profile .icon-button{width:20px}.communication-columns{grid-template-columns:1fr 1fr}.communication-columns>div+div{border-top:0;border-left:1px solid var(--line);padding-top:0;padding-left:20px}}
@media(max-width:700px){.sidebar{position:static;width:100%;padding:16px 16px 8px;border-right:0;border-bottom:1px solid var(--line)}.brand{margin:0 0 13px;font-size:14px}.brand-icon{width:31px;height:34px;font-size:29px}.brand-sub{display:inline;font-size:14px;letter-spacing:0;margin-left:4px}.sidebar nav{display:flex;overflow-x:auto;gap:4px;padding-bottom:4px}.sidebar nav a{white-space:nowrap;padding:7px 10px;font-size:11px;gap:6px}.nav-icon{font-size:16px;width:17px}.school-label,.side-projects,.sidebar-bottom{display:none}.workspace{margin:0}.topbar{height:64px;padding:0 16px;gap:10px}.global-search{max-width:none;flex:1}.global-search input{width:100%;min-width:0}.topbar .button{min-height:36px;padding:7px 11px;font-size:11px}.main{padding:25px 16px}.page-heading{gap:12px;flex-wrap:wrap;margin-bottom:22px}.page-heading h1{font-size:26px}.eyebrow{font-size:9px}.subtitle{font-size:12px}.date-toolbar{align-items:flex-start;flex-wrap:wrap;padding-bottom:20px;gap:15px}.date-controls{width:100%;justify-content:flex-start}.date-controls .button{margin-left:auto}.day-label h2{font-size:18px}.day-label>div>span{font-size:11px}.date-controls input{font-size:13px}.date-tile{width:44px;height:50px;font-size:21px}.cockpit-right{display:block}.quiet-note{padding:10px}.panel-heading h2{font-size:14px}.card-grid{grid-template-columns:1fr}.communication-columns{grid-template-columns:1fr}.communication-columns>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:15px}.entry-card{padding:18px}.entry-meta{font-size:9px}.filter-bar input[name=tag]{max-width:none;flex:1}.filter-bar select{flex:1}.form-row{flex-wrap:wrap;gap:0 12px}.form-row>label{flex-basis:40%}.retention-grid{grid-template-columns:1fr}.save-bar{align-items:flex-start;flex-direction:column}.reminder{flex-wrap:wrap;padding:15px}.reminder form{margin-left:40px}.padded{padding:20px}dialog{padding:21px;max-height:94dvh}.auth-card{padding:28px}.auth-main{padding:22px 15px}.page-footer{margin:0 16px;font-size:8px}.task-text{font-size:13px}.task-check{width:20px;height:20px}.task-row{gap:14px}.task-meta{font-size:10px}.task-group{padding-top:15px}.group-heading{font-size:12px}.panel-heading .text-button{padding:5px 0}.metadata{grid-template-columns:65px 1fr}.assignment{padding:15px 18px}.event{margin:0 18px}.event-actions{flex-wrap:wrap;gap:5px 14px}.event-actions .text-button{font-size:11px}.event-time{width:58px}.panel-caption{margin-left:48px}.journal-footer select{max-width:175px}.tabs{gap:18px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.sidebar nav .mobile-settings{display:none}@media(max-width:700px){.sidebar nav .mobile-settings{display:flex}.topbar{gap:7px}.global-search kbd{display:none}.global-task{font-size:10px!important;padding:7px!important}.topbar .button.primary span{font-size:0}.topbar .button.primary span:after{content:"Eintrag";font-size:11px}}

.excerpt p:last-child{margin-bottom:0}.excerpt pre{overflow:auto}.excerpt h1,.excerpt h2,.excerpt h3{font-size:14px}.excerpt ul,.excerpt ol{padding-left:20px}

/* The editor decorates the original Markdown instead of converting saved data. */
.markdown-editor{border:1px solid #dfe5e5;border-radius:8px;background:#fff;overflow:hidden;width:100%;font-weight:400;min-width:0}
.markdown-editor:focus-within{border-color:#70aaa4;box-shadow:0 0 0 2px #70aaa425}
.md-toolbar{display:flex;gap:2px;align-items:center;flex-wrap:wrap;padding:5px 7px;border-bottom:1px solid var(--line);background:#f8faf9}
.md-toolbar button{border:0;border-radius:4px;background:transparent;color:#526b65;min-width:30px;min-height:30px;font-size:13px;padding:3px 8px}
.md-toolbar button:hover,.md-toolbar button[aria-pressed=true]{background:var(--soft);color:var(--teal)}
.md-toolbar .md-tool-bold{font-weight:750}.md-toolbar .md-tool-italic{font-style:italic}
.md-toolbar .md-source-toggle{font-size:11px;margin-left:auto}
.md-help{padding:5px 12px;color:#7b888c;font-size:10px;border-top:1px solid #f0f3f2}
.md-surface .cm-editor{font-size:14px;color:var(--ink);background:#fff}
.md-surface .cm-editor.cm-focused{outline:none}
.md-surface .cm-scroller{font-family:inherit;line-height:1.7;overflow:auto;max-height:55vh}
.md-surface .cm-content{padding:12px 0;caret-color:var(--teal)}
.md-surface .cm-line{padding:0 12px}
.md-surface .cm-placeholder{color:#939e9f;white-space:pre-wrap;overflow-wrap:anywhere}
.md-surface .md-bold{font-weight:700}
.md-surface .md-italic{font-style:italic}
.md-surface .md-strike{text-decoration:line-through}
.md-surface .md-heading{font-weight:700;line-height:1.5;padding-top:5px;padding-bottom:5px;letter-spacing:-.3px}
.md-surface .md-h1{font-size:25px}.md-surface .md-h2{font-size:21px}.md-surface .md-h3{font-size:18px}
.md-surface .md-h4,.md-surface .md-h5,.md-surface .md-h6{font-size:16px}
.md-surface .md-inline-code{font-family:ui-monospace,monospace;font-size:.92em;background:#eef3ef;border-radius:3px}
.md-surface .md-code-line{font-family:ui-monospace,monospace;font-size:12px;background:#f2f5f3}
.md-surface .md-code-fence{color:#8b9b95}
.md-surface .md-link{color:var(--teal);text-decoration:underline;text-underline-offset:2px}
.md-surface .md-bullet{color:var(--teal);font-weight:700}
.md-surface .md-task-marker{color:var(--teal);font-size:17px;line-height:1}
.md-surface .md-list-number{color:var(--teal);font-weight:600}
.md-surface .md-quote{border-left:3px solid #99b7a7;margin-left:12px;color:#71857d;padding-left:10px;background:#f8faf8}
.md-surface .md-quote-marker{display:inline-block;width:0}
.md-surface .md-rule{display:inline-block;width:100%;border-top:1px solid #cbdad2;vertical-align:middle}
.md-surface .md-table-line{font-family:ui-monospace,monospace;font-size:12px;background:#fafbf9}
.markdown-editor.md-invalid{border-color:var(--red)}
.md-invalid .md-help{color:var(--red)}
.journal-panel .markdown-editor{background:#fbfcfb}
.journal-panel .md-surface .cm-editor{font-size:13px}
@media(max-width:700px){.md-toolbar button{min-height:36px;min-width:32px}.md-surface .cm-editor{font-size:16px}.journal-panel .md-surface .cm-editor{font-size:16px}.md-help{font-size:10px}}

/* Searchable, keyboard accessible selections for participants, projects and tags. */
.autocomplete-field{min-width:0;margin:16px 0}
.autocomplete-field>label{margin:0 0 6px}
.form-row>.autocomplete-field{flex:1;min-width:0}
.autocomplete{position:relative;min-width:0;width:100%;font-weight:400}
.ac-box{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:5px 7px;border:1px solid #dfe5e5;border-radius:7px;background:#fff;min-height:43px;cursor:text}
.ac-box:focus-within{border-color:#70aaa4;box-shadow:0 0 0 2px #70aaa420}
.ac-tokens{display:contents}
.ac-chip{display:inline-flex;align-items:center;gap:5px;border-radius:5px;padding:3px 4px 3px 8px;background:#eaf3f0;color:#426f65;font-size:12px;max-width:100%}
.ac-chip>span{overflow-wrap:anywhere;min-width:0}
.ac-chip>small{font-size:9px;color:#998051}
.ac-chip>button{border:0;background:transparent;color:#53786f;font-size:18px;line-height:1;min-width:25px;min-height:25px;padding:0;border-radius:4px;flex-shrink:0}
.ac-chip>button:hover{background:#d4e7df}
.ac-box .ac-input{border:0;outline:none;box-shadow:none;min-width:125px;flex:1;width:140px;max-width:100%;padding:5px 3px;font-size:13px;background:transparent}
.ac-box .ac-input:focus-visible{outline:none}
.ac-list{position:absolute;top:100%;left:0;right:0;z-index:30;background:white;border:1px solid #cfddd6;border-radius:7px;box-shadow:0 8px 24px #203d3520;max-height:225px;overflow-y:auto;margin-top:3px}
.ac-option{padding:9px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;overflow-wrap:anywhere;border-bottom:1px solid #f0f3f1;font-size:13px}
.ac-option:hover,.ac-option[aria-selected=true]{background:#eaf3f0}
.ac-option small{color:#7b888c;font-size:10px}
.ac-empty{padding:10px 12px;color:#83918a;font-size:11px}
.ac-message{font-size:10px;line-height:1.5;color:#83918a;margin-top:4px}
.ac-message:empty{display:none}
.ac-invalid .ac-box{border-color:var(--red)}
.ac-invalid .ac-message{color:var(--red)}
.journal-footer .autocomplete{flex:1;min-width:0}
.journal-footer .ac-box .ac-input{font-size:11px;min-width:95px}
.journal-footer .ac-chip{font-size:10px}
.journal-footer .ac-message{font-size:9px}
.assignment>.autocomplete{flex:1;min-width:170px;max-width:350px}
.filter-bar>.autocomplete{max-width:230px}
.contact-suggestion{display:flex;gap:20px;justify-content:space-between;padding:20px 0;border-top:1px solid var(--line)}
.suggestion-info{min-width:0}.suggestion-info h3{overflow-wrap:anywhere;margin-bottom:4px}
.suggestion-info p{margin-bottom:8px}
.suggestion-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;align-content:center;max-width:380px}
.suggestion-entries{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--teal)}
.suggestion-entries span{color:var(--muted);margin-left:5px}
.ignored-suggestion{display:flex;justify-content:space-between;gap:12px;padding:10px 0;font-size:12px}
.panel.contact-suggestions,.panel:has(.assignment),.panel.journal-panel{overflow:visible}
@media(max-width:700px){.form-row>.autocomplete-field{flex-basis:100%}.ac-box .ac-input{font-size:16px}.journal-footer .ac-box .ac-input{font-size:16px}.ac-chip>button{min-height:30px;min-width:30px}.ac-option{min-height:44px}.contact-suggestion{flex-direction:column}.suggestion-actions{justify-content:flex-start;max-width:none}.filter-bar>.autocomplete{max-width:none;flex:1;min-width:130px}.journal-footer{flex-wrap:wrap}.journal-footer>.autocomplete{flex-basis:100%}.ac-list{max-height:180px}}

.task-draft{display:flex;align-items:end;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);margin-bottom:10px}
.task-draft>label{flex:1;min-width:0;margin:0}.task-draft>label:first-child{flex:2}.task-draft>button{margin-bottom:10px}
.task-row.is-subtask{padding-left:30px;border-left:3px solid #dceae4}
.task-row:target{background:#edf6f0}.task-content{min-width:0}.task-content>.text-button{margin-top:7px}
.subtask-list{font-size:12px;margin-top:8px}.subtask-list a{display:block;padding:5px 0;color:var(--teal);overflow-wrap:anywhere}
@media(max-width:700px){.task-draft{flex-wrap:wrap}.task-draft>label:first-child{flex-basis:100%}.task-draft>label{flex:1}.task-row.is-subtask{padding-left:16px}}

.cm-tooltip.resource-completions{border:1px solid #cfddd6;border-radius:7px;background:#fff;box-shadow:0 8px 24px #203d3520;max-width:min(600px,90vw)}
.cm-tooltip.resource-completions>ul{max-height:240px;max-width:100%;font-family:system,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.cm-tooltip.resource-completions>ul>li{padding:8px 12px;white-space:normal;overflow-wrap:anywhere}
.cm-tooltip.resource-completions>ul>li[aria-selected]{background:#eaf3f0;color:#244e45}
.resource-completions .cm-completionLabel{display:block;font-size:13px}.resource-completions .cm-completionDetail{display:block;margin:2px 0 0;font-size:10px;color:#6d827b;font-style:normal}
.md-resource-link{cursor:pointer}
@media(max-width:700px){.cm-tooltip.resource-completions>ul>li{min-height:44px}.cm-tooltip.resource-completions>ul{max-height:190px}}

.document-add{padding:0 22px 18px}.document-add .button{white-space:normal;text-align:left}
.document-card{padding:18px 22px;border-top:1px solid var(--line)}.document-card h3{overflow-wrap:anywhere}
.document-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:10px 0}
.document-description{white-space:pre-wrap;overflow-wrap:anywhere}.document-url{margin-top:16px}

.attachment-row{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);min-width:0}.attachment-row>form{display:flex}
.attachment-row>.attachment{flex:1;min-width:0;border-bottom:0}.attachment-row>.attachment>div{min-width:0;overflow-wrap:anywhere}
.pdf-preview-button{margin-right:18px;flex-shrink:0}
.pdf-preview{position:fixed;inset:auto;margin:0;padding:16px;border:1px solid #cadbd3;border-radius:12px;box-shadow:0 12px 45px #17372c38;background:#fff;color:var(--ink);z-index:2000;display:flex;flex-direction:column;overflow:hidden}.pdf-preview[hidden]{display:none}.pdf-preview-image{flex:1;min-height:0;overflow:auto}
.pdf-preview-header{display:flex;justify-content:space-between;gap:12px;align-items:start}.pdf-preview-header>div{min-width:0}.pdf-preview-header h2{font-size:15px;overflow-wrap:anywhere;margin-bottom:2px}.pdf-preview-header .icon-button{flex-shrink:0}
.pdf-preview-image img{display:block;width:100%;height:auto;border:1px solid var(--line);background:white}.pdf-preview-image img[hidden]{display:none}
.pdf-preview-actions{margin-top:12px}.pdf-preview-status{font-size:13px;padding:20px 0}

/* Phosphor-Symbole aus dem Sprite in templates/icons.html */
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.icon{width:1.15em;height:1.15em;flex-shrink:0;fill:currentColor;vertical-align:-.17em}
svg.nav-icon{width:19px;height:19px;color:inherit}
svg.section-icon{width:18px;height:18px}
svg.empty-icon{width:27px;height:27px;margin-bottom:5px}
svg.folder-icon{width:26px;height:26px}
svg.reminder-icon{width:24px;height:24px}
svg.quiet-icon{width:20px;height:20px;color:#b8c8bc}
svg.search-icon{width:17px;height:17px;color:#929fa2}
.button .icon{width:16px;height:16px}
.button.small .icon{width:14px;height:14px}
.text-button{display:inline-flex;align-items:center;gap:5px}
.text-button .icon{width:14px;height:14px}
.icon-button .icon{width:19px;height:19px}
.profile .icon-button .icon{width:17px;height:17px}
.date-controls .icon-button .icon{width:16px;height:16px}
.task-check .icon{width:12px;height:12px}
.task-meta .icon{width:12px;height:12px}
.subtask-list .icon{width:12px;height:12px}

.attachment>.icon{width:18px;height:18px;color:var(--teal)}
.back-link{display:inline-flex;align-items:center;gap:6px}
.back-link .icon{width:14px;height:14px}
.panel-link .icon,.project-card-stats .icon{width:14px;height:14px;color:var(--teal)}
.security-line .icon{width:16px;height:16px;color:var(--teal)}
.inbox-summary .button .icon{width:14px;height:14px}
@media(max-width:700px){svg.nav-icon{width:17px;height:17px}}
.sidebar-bottom>a{display:flex;align-items:center;gap:13px}

.tag-card h2{display:flex;align-items:start;gap:8px}.tag-card h2 span{overflow-wrap:anywhere;min-width:0}.tag-card:hover{border-color:#8db9a8}.tag-card p{margin-bottom:10px}

.type-protocol{color:#65548c;background:#f0ecf7}.protocol-section{margin:24px 0;padding-bottom:16px;border-bottom:1px solid var(--line)}

.handwriting-sheets{margin-bottom:24px}.handwriting-sheets .panel-heading{padding:0 0 14px;gap:12px;flex-wrap:wrap}.handwriting-sheet{border-top:1px solid var(--line);padding:16px 0}.handwriting-sheet img{display:block;max-width:100%;max-height:420px;margin:0 auto 12px;border:1px solid var(--line)}.handwriting-sheet .actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}@media(max-width:600px){.topbar{flex-wrap:wrap}.handwriting-new{font-size:12px;padding:6px 10px}}

@media(max-width:1200px){.topbar .breadcrumb{display:none}.global-search{min-width:0}.global-search input{min-width:0;width:100%}}@media(max-width:1000px){.global-search{flex:1}}@media(max-width:700px){.topbar{height:auto;min-height:64px;padding:10px 16px;flex-wrap:wrap}.global-search{flex:1 0 100%}}

#entry-classification{margin-bottom:24px}

.drawing-links{margin-top:20px;border-top:1px solid var(--line);padding-top:12px}.drawing-links h4{margin:0 0 8px}.resource-picker{position:relative;max-width:720px}.resource-picker>input{width:100%}.drawing-resource-list{list-style:none;padding:0}.drawing-resource-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:8px 0}.drawing-resource-list a{overflow-wrap:anywhere}.related-drawings{border-top:1px solid var(--line);padding-top:16px}.related-drawing{display:flex;flex-direction:column;gap:8px;margin:16px 0}.related-drawing img{display:block;max-width:100%;max-height:180px}.resource-picker .ac-option[aria-selected=true]{background:var(--soft)}

.handwriting-sheets{overflow:visible}

.detail-grid[data-single="true"]{grid-template-columns:1fr}

.handwriting-meta{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:18px}
.handwriting-meta>.panel{min-width:0;margin:0;overflow:visible}
.handwriting-meta #entry-classification{padding:14px 16px;margin:0}
.handwriting-meta #entry-classification h2{font-size:15px;margin-bottom:6px}
.handwriting-meta #entry-classification label{margin:6px 0;font-size:12px}
.handwriting-meta #entry-classification .form-row{gap:12px}
.handwriting-meta #entry-classification .autocomplete-field{margin-bottom:8px}
.handwriting-meta #entry-classification .ac-box{min-height:36px}
.handwriting-meta #entry-classification .ac-input{padding:5px 6px;font-size:12px}
.compact-tasks .panel-heading{padding:14px 16px 0;margin-bottom:10px}
.compact-tasks .compact-empty{margin:0;padding:0 16px 14px}
.compact-tasks .task-row{padding:10px 16px}
@media(max-width:800px){.handwriting-meta{grid-template-columns:1fr;gap:10px}.handwriting-meta #entry-classification .form-row{flex-wrap:nowrap}.handwriting-meta #entry-classification .form-row>.autocomplete-field{flex-basis:0}}

.entry-resources{overflow:visible}.entry-resources h2{font-size:15px;margin-bottom:6px}.entry-resources>p{margin-bottom:10px}

.case-entry-add{overflow:visible}.case-entry-add label{margin-top:0}.case-entry-remove{padding:0 20px 12px}.case-reminder{display:flex;flex-direction:column;gap:3px;padding:12px 20px;border-top:1px solid var(--line);overflow-wrap:anywhere}
.handwriting-meta #entry-classification .form-row{flex-wrap:wrap}.handwriting-meta #entry-classification .form-row>.autocomplete-field{flex:1 1 140px}

.assignment>.autocomplete-field{flex:1;min-width:170px;max-width:350px}.assignment>.autocomplete-field>label{margin:0 0 4px}.journal-footer{flex-wrap:wrap}

/* UI review: readable, compact lists and reliable controls. */
:root{--muted:#596d72}
.mobile-nav-toggle{display:none}
fieldset.association-fields{min-width:0;border:1px solid var(--line);border-radius:8px;padding:0 14px 12px;margin:20px 0}
.association-fields legend{font-weight:600;padding:0 6px}
/* Kompakte Zuordnungen im Eintragsdialog: zwei Spalten, Tags über die volle Breite. */
fieldset.association-fields:has(.assoc-grid){padding:0 14px 10px;margin:16px 0}
.assoc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;align-items:start}
.assoc-grid>*{min-width:0;margin:0}
.assoc-grid>*:last-child{grid-column:1/-1}
.assoc-grid label,.assoc-grid .autocomplete-field>label{margin:0 0 4px;gap:4px}
.assoc-grid .ac-box{min-height:38px}
.assoc-grid .ac-message{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.assoc-grid .ac-invalid .ac-message{position:static;width:auto;height:auto;margin:4px 0 0;clip:auto;white-space:normal}
.assoc-hint{margin:8px 0 0;font-size:11px}
@media(max-width:700px){.assoc-grid{grid-template-columns:1fr}}
.structured-dialog{padding:0;overflow:hidden}
.structured-dialog>form{display:flex;flex-direction:column;max-height:calc(90dvh - 2px);min-height:0}
.structured-dialog .dialog-heading{padding:20px 24px 12px;flex-shrink:0}
.structured-dialog .dialog-scroll{padding:0 24px 20px;overflow-y:auto;min-height:0;overscroll-behavior:contain}
.structured-dialog .dialog-footer{flex-shrink:0;background:var(--paper);padding:14px 24px;margin:0;border-top:1px solid var(--line);box-shadow:0 -3px 12px #233b4008}
.contact-suggestions{margin-top:0;padding:14px 20px}
.contact-suggestions>summary{font-size:14px;font-weight:600;min-height:30px;line-height:30px}
.contact-suggestions>p{margin-top:12px}
.contact-suggestions:not([open]){background:#f0f5f3}
.contact-suggestion{padding:14px 0}
.contact-suggestions[open]>.contact-suggestion{scroll-margin-top:20px}
.card-grid.contact-list{display:block}
.contact-list>.panel{padding:16px 20px;margin-bottom:8px}
.contact-row{display:grid;grid-template-columns:minmax(160px,1.3fr) minmax(160px,1fr) minmax(160px,1.5fr) auto;gap:16px;align-items:center}
.contact-row h2{font-size:16px;margin:0 0 3px}
.contact-row p{margin:0;font-size:13px;overflow-wrap:anywhere}
.contact-row .contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.contact-row .contact-links .text-button{min-height:32px}
.task-filters{align-items:end;flex-wrap:wrap}
.filter-label{margin:0;font-size:12px;min-width:130px;flex:1}
.task-filters>.autocomplete-field{flex:1;min-width:160px;margin:0}
.task-filters>.autocomplete-field>label{margin:0 0 6px}
.task-filters>input[name=q]{min-width:200px;flex:2}
.pagination{margin:24px 0;flex-wrap:wrap}
.task-actions{margin-top:7px}
.task-actions summary{font-size:12px;min-height:28px;line-height:28px}
.task-check{width:32px;height:32px;flex-shrink:0;margin-top:0;border-color:#8eaaa3}
.task-text,.task-list .task-text{font-size:14px;color:#344f54}
.task-meta,.task-list .task-meta{font-size:12px;color:#596d72}
.entry-meta,.type-label{font-size:12px;color:#52696c}
.tag{font-size:12px;color:#526d72}
.excerpt,.entry-card .small{font-size:13px;color:#596d72}
.panel-caption,.group-empty,.empty p,.empty strong{font-size:12px;color:#596d72}
.ac-message,.md-help{font-size:12px;color:#596d72}
.pill{font-size:12px}
.entry-extra-actions{margin:0 0 18px}
.compact-empty{padding:12px 22px 18px;margin:0;color:var(--muted);font-size:13px}
.compact-document{background:transparent;border:0;margin-bottom:16px}
.compact-document .document-add{padding:0}
.document-add .button{white-space:normal;text-align:left}
.button-group{flex-wrap:wrap}
.filter-bar>select[name=type]{min-width:160px}
.assignment>.autocomplete-field{flex:1 1 170px;min-width:0}
.assignment .autocomplete-field>label{margin:0 0 6px}
.assignment .ac-message:empty{display:none}
.retention-settings>summary{font-size:17px;font-weight:600}
.settings-grid h2{font-size:20px}
.save-bar{position:sticky;bottom:0;background:var(--bg);padding:14px 0;z-index:3;border-top:1px solid var(--line)}
@media(max-width:1200px){.contact-row{grid-template-columns:minmax(160px,1fr) minmax(160px,1fr)}.contact-row .contact-links{flex-direction:row;gap:12px}}
@media(max-width:1000px){
 .cockpit-grid{display:flex;flex-direction:column}
 .cockpit-left,.cockpit-right{display:contents}
 .cockpit-grid .cockpit-left>*,.cockpit-grid .cockpit-right>*{order:4;margin-bottom:0}
 .cockpit-grid .case-reminders{order:0}
 .cockpit-grid .tasks-panel{order:1}
 .cockpit-grid .cockpit-left>section:first-child{order:2}
 .cockpit-grid .journal-panel{order:3}
 .cockpit-grid .inbox-summary,.cockpit-grid .quiet-note{order:5}
}
@media(max-width:700px){
 .sidebar{padding:12px 16px}
 .sidebar .brand{margin-bottom:10px}
 .mobile-nav-toggle{display:flex;width:100%;justify-content:space-between;min-height:44px}
 .mobile-nav-toggle span{font-weight:600;color:var(--teal)}
 .sidebar nav{display:none;overflow:visible;padding-top:8px}
 .sidebar nav.mobile-open{display:grid;grid-template-columns:1fr 1fr;gap:4px}
 .sidebar nav a{min-height:44px;font-size:13px;white-space:normal}
 .topbar{min-height:0;padding:10px 16px}
 .topbar .button{min-height:44px;font-size:12px}
 .filter-bar{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}
 .filter-bar input,.filter-bar select,.filter-bar>.autocomplete,.filter-bar>.autocomplete-field{width:100%;max-width:none;min-width:0}
 .filter-bar>select[name=type]{min-width:0}
 .filter-bar>.autocomplete-field>label{margin:0 0 6px}
 .filter-bar>.button{justify-self:start;min-width:110px}
 .structured-dialog>form{max-height:calc(94dvh - 2px)}
 .structured-dialog .dialog-heading{padding:16px 18px 8px}
 .structured-dialog .dialog-scroll{padding:0 18px 16px}
 .structured-dialog .dialog-footer{padding:12px 18px}
 .dialog-footer .button{min-height:44px}
 .structured-dialog input,.structured-dialog textarea,.structured-dialog select{font-size:16px}
 .structured-dialog .form-row>label{flex-basis:100%}
 .contact-row{grid-template-columns:1fr;gap:6px}
 .contact-list>.panel{padding:15px}
 .contact-row .contact-links{justify-content:space-between}
 .contact-row .contact-links .text-button{min-height:44px}
 .task-check{width:44px;height:44px}
 .task-actions summary,.subtask-list summary{min-height:44px;line-height:44px}
 .task-row{gap:10px}
 .task-meta{font-size:12px}
 .tabs{flex-wrap:wrap;gap:6px 18px}
 .tabs a{min-height:44px}
 .assignment{display:block}
 .assignment>.autocomplete-field{margin-bottom:12px}
 .assignment>.button,.assignment>.text-button{min-height:44px}
 .contact-suggestions>summary{line-height:1.6;min-height:44px;padding:8px 0}
 .save-bar .button-group{width:100%}
 .save-bar .button{white-space:normal;flex:1;min-height:44px}
}
/* Keep large hit areas without drawing oversized checkboxes. */
.task-check,.task-check.checked,.task-check:hover{position:relative;background:transparent;border:0;color:white}
.task-check::before{content:'';position:absolute;inset:6px;border:1px solid #7b9690;border-radius:4px;background:white}
.task-check.checked::before{background:var(--teal);border-color:var(--teal)}
.task-check:hover::before{border-color:var(--teal);box-shadow:0 0 0 2px var(--soft)}
.task-check .icon{position:relative;z-index:1;width:14px;height:14px}
input::placeholder,textarea::placeholder{color:#63767b}
.warning{color:#75521c}
:root{--red:#a34339}
.tasks-panel .empty,.compact-tasks .empty{padding:14px 18px}
.tasks-panel .empty-icon,.compact-tasks .empty-icon{display:none}
.structured-dialog label{margin:10px 0;gap:5px}
.structured-dialog .entry-basics{gap:10px}
@media(max-width:700px){
 .task-check::before{inset:11px}
 .structured-dialog .entry-basics{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .structured-dialog .entry-basics>label:first-child{grid-column:1/-1}
 .structured-dialog .entry-basics input{padding:8px 5px;width:100%}
}
/* Secondary task actions occupy a single, labelled icon instead of a row. */
.task-content{position:relative;padding-right:44px}
.task-actions{position:absolute;right:0;top:0;margin:0}
.task-actions>summary{display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;line-height:1;list-style:none;border-radius:6px;margin:0}
.task-actions>summary::-webkit-details-marker{display:none}
.task-actions>summary:hover,.task-actions[open]>summary{background:var(--soft)}
.task-actions>summary .icon{width:24px;height:24px}
.task-actions[open]{z-index:5}
.task-actions>.task-menu{position:absolute;right:0;top:38px;min-width:175px;display:flex;flex-direction:column;align-items:stretch;gap:2px;padding:6px;background:white;border:1px solid var(--line);border-radius:7px;box-shadow:0 6px 18px #233b401a}.task-actions>.task-menu button{min-height:44px;padding:8px 12px;justify-content:flex-start;text-align:left;white-space:nowrap}
.panel:has(.task-row){overflow:visible}
@media(max-width:700px){.task-actions>summary{width:44px;height:44px;min-height:44px}.task-actions>button{top:46px}}
.recurrence-preview{padding:12px;background:var(--soft);border-radius:7px;overflow-wrap:anywhere;font-size:13px}
.series-badge{display:inline-flex;align-items:center;gap:5px;color:var(--teal)}
#series-dialog{width:680px}
[data-repeat-options] code{white-space:nowrap}

.sidebar-switch{display:flex;gap:2px;padding:2px;margin-bottom:6px;background:var(--bg);border:1px solid var(--line);border-radius:8px}.sidebar-switch button{flex:1;min-width:0;min-height:28px;padding:3px 5px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:11px;font-weight:600}.sidebar-switch button[aria-pressed="true"]{background:var(--teal);color:white}.sidebar-switch button:hover{box-shadow:inset 0 0 0 1px var(--teal)}.side-projects a{overflow-wrap:anywhere;min-width:0}
.global-search{position:relative}.search-suggestions{position:absolute;top:calc(100% + 6px);right:0;width:400px;max-width:calc(100vw - 32px);max-height:60vh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 25px #233b4022;z-index:30}.search-suggestions a{display:flex;flex-direction:column;padding:10px 14px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;font-size:13px}.search-suggestions a:hover,.search-suggestions a[aria-selected=true]{background:var(--soft)}.search-result{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 20px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.search-result:hover{background:var(--soft)}@media(max-width:700px){.search-suggestions{right:auto;left:0}}
.suggestion-field{position:relative;min-width:0}.suggestion-field>input,.suggestion-field>textarea{width:100%}.filter-bar>.suggestion-field{flex:1;min-width:150px}.suggestion-field .search-suggestions{left:0;right:auto;width:max(100%,280px);max-width:calc(100vw - 60px)}.search-suggestions button{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:10px 14px;border:0;border-bottom:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:left;overflow-wrap:anywhere;font-size:13px}.search-suggestions button:hover,.search-suggestions button[aria-selected=true]{background:var(--soft)}
.attachment-row{flex-wrap:wrap}.meeting-attachment-action{font-size:11px;margin:0 12px 8px}.event-actions form{display:inline-flex;margin:0}.task-meta .series-badge{white-space:normal;overflow-wrap:anywhere}#meeting-dialog .form-row{align-items:center}#meeting-dialog .form-row .button{margin-top:20px}.actions{display:flex;flex-wrap:wrap;gap:8px}
.collection-board{margin-top:24px}.collection-board>.panel-heading{padding:0;align-items:flex-start;flex-wrap:wrap}.collection-item{padding:18px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.collection-item-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.collection-item .markdown{margin-top:12px}.collection-item.collected-done{border-left:3px solid var(--teal);padding-left:12px}.collection-remove{margin-top:8px}.collection-item details{margin-top:8px}.collection-board .resource-picker{position:relative}
/* Der Editor setzt diese beiden Angaben als Style-Attribut; die Richtlinie lässt
   Style-Attribute nicht zu, deshalb stehen sie hier im eigenen Stylesheet. */
.cm-content{tab-size:4}
.cm-placeholder{pointer-events:none}
.card-actions{display:flex;align-items:center;gap:14px}

/* Shared form captions, width categories and repeated date inputs. */
.field-caption{display:block;line-height:1.5}
.field-caption>.muted{font-weight:400}
label:has(:required:not(:disabled))>.field-caption::after,
.autocomplete-field:has([aria-required="true"])>label>.field-caption::after{content:' *';color:var(--teal);font-weight:700}
.form-field-guide{margin:0 0 12px}
dialog#case-dialog,dialog#document-dialog{width:520px}
dialog#suggestion-link-dialog,dialog#project-suggestion-link-dialog,dialog#case-suggestion-link-dialog,dialog#note-dialog{width:440px}
.date-row{display:flex;gap:12px;align-items:center}
.date-row>label{flex:1;min-width:0}
.date-row>.text-button{flex-shrink:0;margin-top:24px}

/* Compact cockpit heading: date and navigation share one toolbar. */
.cockpit-date-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin:0 0 20px;padding:0 0 14px}
.cockpit-date-toolbar h1{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 10px;font-size:21px;line-height:1.4;margin:0;letter-spacing:0}
.cockpit-date-toolbar h1 time{font-size:16px;font-weight:400;color:var(--muted)}
.cockpit-date-toolbar .date-controls{display:flex;align-items:center;gap:6px;width:auto}
.cockpit-date-toolbar .date-controls input{min-height:40px}
.cockpit-date-toolbar .date-controls .icon-button{min-width:40px;min-height:40px}
@media(max-width:700px){
 .cockpit-date-toolbar{gap:10px;margin-bottom:16px;padding-bottom:12px}
 .cockpit-date-toolbar h1{font-size:19px}
 .cockpit-date-toolbar h1 time{font-size:15px}
 .cockpit-date-toolbar .date-controls{width:100%}
 .cockpit-date-toolbar .date-controls form{flex:1;min-width:0}
 .cockpit-date-toolbar .date-controls input{width:100%;min-width:0}
 .cockpit-date-toolbar .date-controls .button{margin-left:0;min-height:40px}
}

/* Separate saved journal entries from the writing area. */
.journal-history{border-top:1px solid var(--line);margin-top:8px;padding-top:16px}
.journal-history>h3{margin:0;padding:0 23px 12px;font-size:13px;font-weight:600;color:var(--muted)}
.journal-history>.entry-card:first-of-type{border-top:0}
.voice-player{display:block;width:100%;max-width:100%;margin:12px 0}
.attachment-row>.voice-player{width:calc(100% - 32px);margin:8px 16px;flex-basis:100%}
#voice-dialog{width:520px}
.voice-clock{font-size:32px;font-variant-numeric:tabular-nums;margin:12px 0}
.topbar{gap:10px}
.topbar>.button{white-space:nowrap}
@media(max-width:1400px){.topbar .breadcrumb{display:none}.topbar .global-search{flex:1;min-width:100px}}
@media(min-width:701px) and (max-width:1100px){.topbar{height:auto;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.topbar .global-search{flex:1 0 100%;max-width:none}.topbar .global-search input{width:100%}}
@media(max-width:700px){
 .topbar .global-search{flex:1 0 100%;max-width:none}
 .topbar>.button{flex:1 1 auto;padding:7px!important;font-size:11px!important;gap:4px}
}
@media(max-width:700px){.journal-history>h3{padding-right:18px;padding-left:18px}}

/* Mailkarten im Tagescockpit: Betreff, Beteiligte, Zuordnungen und Aktionen
   sollen sich auf den ersten Blick unterscheiden. */
.mail-card{position:relative;padding:14px 16px 12px 15px;margin-bottom:10px;border:1px solid var(--line);
  border-left:3px solid var(--mail-accent);border-radius:9px;background:var(--mail-tint)}
.mail-card.incoming{--mail-accent:#6f9ab8;--mail-tint:#f5f9fb}
.mail-card.outgoing{--mail-accent:#a08fb4;--mail-tint:#f9f7fb}
.mail-card:last-child{margin-bottom:0}
.mail-top{display:flex;align-items:flex-start;gap:8px}
svg.mail-direction{width:15px;height:15px;margin-top:2px;flex:none;color:var(--mail-accent)}
.mail-card h3{margin:0;font-size:13px;line-height:1.45;font-weight:650;flex:1;min-width:0;overflow-wrap:anywhere}
.mail-card h3 a{color:var(--ink)}
.mail-card h3 a:hover{color:var(--teal)}
.mail-time{flex:none;font-size:11px;color:#7b8b8e;font-variant-numeric:tabular-nums;padding-top:1px}
.entry-person{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:6px 0 0;font-size:12px;color:#5f7275}.mail-card .entry-person{margin-left:23px}
.entry-person .icon{width:13px;height:13px;color:#93a4a7;flex:none}
.mail-card .chips{margin-left:23px}
.chips{margin-top:9px;gap:6px}.chips .pill{gap:5px;font-size:11px;padding:3px 9px;border:1px solid transparent}
.chips .pill .icon{width:12px;height:12px;flex:none}
.pill-project{background:#e8f1ec;color:#41705f;border-color:#d7e7de}
.pill-case{background:#eef1f8;color:#4e5d82;border-color:#dde3f1}
.pill-tag{background:#fff;color:#6c7b7e;border-color:#e2e8e8}
.pill-file{background:#f2f4f4;color:#6f7d80;border-color:#e4e9e9}
.entry-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px;padding-top:9px;border-top:1px solid #e7eeef}.mail-card .entry-actions{margin-left:23px}
.mini-button{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid #dce5e4;border-radius:6px;
  padding:5px 10px;font-size:11px;font-weight:550;color:var(--teal-dark);min-height:30px}
.mini-button:hover{background:var(--soft);border-color:#c3d8d1}
.mini-button .icon{width:13px;height:13px}
@media(max-width:700px){
  .mail-card{padding:13px 13px 11px 12px}
  .mail-card .entry-person,.mail-card .chips,.mail-card .entry-actions{margin-left:0}
  .mini-button{min-height:36px;font-size:12px}
}

/* Abstufung der Schaltflächen: Hauptaktion gefüllt, Nebenaktion umrandet,
   Löschen rot und erst beim Zeigen farbig hinterlegt. */
.button .icon,.mini-button .icon,.text-button .icon{flex:none}
.button.primary .icon{color:#fff}
.button.danger,.text-button.danger,.mini-button.danger{color:var(--red)}
.button.danger{border-color:#e8cfca}
.button.danger:hover,.mini-button.danger:hover{background:#fbeeeb;border-color:#dcb6ae;color:#8f4339}
.text-button.danger:hover{color:#8f4339}
.text-button{gap:5px}
.text-button .icon{width:14px;height:14px}
/* Filterleisten: Suchen führt, Zurücksetzen tritt zurück. */
.filter-bar .button{min-height:40px}
.mobile-nav-toggle .icon,.sidebar-lists .icon{width:15px;height:15px}
.task-meta a{display:inline-flex;align-items:center;gap:4px}
.task-meta .icon{width:12px;height:12px;flex:none;opacity:.75}

/* Nextcloud-Dokumente im Journal ansehen */
.document-viewer{margin:16px 0 20px;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;overflow:hidden}
.viewer-stage{display:flex;align-items:center;justify-content:center;min-height:260px;padding:14px;background:#f2f5f5}
.viewer-stage img{max-width:100%;max-height:70vh;border-radius:4px;box-shadow:0 2px 10px #233b4022;background:#fff}
.viewer-status{margin:0;font-size:12px;color:var(--muted);text-align:center}
.viewer-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 14px;border-top:1px solid var(--line);background:#fff}
.viewer-count{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.viewer-bar a.mini-button{margin-left:auto}
.viewer-bar button[disabled]{opacity:.45}
@media(max-width:700px){.viewer-stage{min-height:200px;padding:8px}.viewer-stage img{max-height:60vh}.viewer-bar a.mini-button{margin-left:0}}
.document-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.pdf-preview-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}

/* Dateibrowser der Nextcloud im Dokumentdialog */
.cloud-choice{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px}
.cloud-choice .muted{overflow-wrap:anywhere}
.cloud-picker{margin:10px 0 4px;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;overflow:hidden}
.cloud-bar{display:flex;gap:8px;align-items:center;padding:10px;border-bottom:1px solid var(--line);background:#fff}
.cloud-bar input{flex:1;min-width:0;font-size:12px}
.cloud-path{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px 10px;font-size:11px;color:var(--muted);border-bottom:1px solid var(--line)}
.cloud-crumb{background:none;border:0;padding:2px 4px;color:var(--teal-dark);font-size:11px;font-weight:550;border-radius:4px}
.cloud-crumb:hover{background:var(--soft)}
.cloud-sep{color:#b9c4c4}
.cloud-list{list-style:none;margin:0;padding:4px;max-height:280px;overflow:auto}
.cloud-item{display:flex;align-items:center;gap:9px;width:100%;background:none;border:0;border-radius:7px;
  padding:8px 10px;min-height:38px;text-align:left;font-size:12.5px;color:var(--ink)}
.cloud-item:hover,.cloud-item:focus-visible{background:var(--soft)}
.cloud-item .icon{width:16px;height:16px;flex:none;color:#8aa39c}
.cloud-item.ist-ordner .icon{color:var(--teal)}
.cloud-item.ist-ordner .cloud-name{font-weight:600}
.cloud-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cloud-meta{flex:none;font-size:10.5px;color:var(--muted);max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cloud-status{margin:0;padding:14px 12px;font-size:12px;color:var(--muted)}
.cloud-hint{padding:8px 12px;font-size:11px;color:var(--muted)}
.cloud-item.ist-gewaehlt{background:var(--soft)}
.cloud-item.ist-gewaehlt .cloud-name{color:var(--teal-dark);font-weight:600}
.chosen-documents{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.chosen-document{display:flex;align-items:center;gap:9px;padding:7px 10px;border:1px solid var(--line);
  border-radius:8px;background:#fbfcfc;font-size:12.5px}
.chosen-document>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chosen-document>.icon{width:16px;height:16px;flex:none;color:var(--teal)}
@media(max-width:700px){.cloud-list{max-height:220px}.cloud-meta{display:none}}

/* A visible daily accomplishment section below the open tasks. */
.completed-today{background:var(--soft);border-top:1px solid var(--line)}
.completed-today .group-heading{color:var(--teal)}
.completed-today .task-text{color:var(--ink)}
.completed-today .group-heading>.icon{width:15px;height:15px}

/* Compact, readable email previews across overview cards. */
.mail-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere;color:var(--muted);font-size:13px;line-height:1.55;margin:10px 0 12px;white-space:normal}

/* Seitenleiste: eigener Bildlauf, damit auf flachen Bildschirmen (Tablet quer)
   nichts unten abgeschnitten wird – und ein Zustand, in dem nur Symbole stehen. */
.sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-bottom:14px}
.sidebar-head{display:flex;align-items:center;gap:8px;margin:0 4px 30px}
.sidebar-head .brand{margin:0;min-width:0}
.sidebar-toggle{flex:none;margin-left:auto;color:#9aa8ab}
.sidebar-toggle .icon{width:19px;height:19px}

body.sidebar-collapsed .sidebar{width:72px;padding-left:10px;padding-right:10px}
body.sidebar-collapsed .workspace{margin-left:72px}
body.sidebar-collapsed .school-label,
body.sidebar-collapsed .side-projects,
body.sidebar-collapsed .profile>div{display:none}
/* Beschriftungen verschwinden nur aus dem Bild, nicht aus dem Bedienbaum:
   sonst hätten Vorlesesoftware und Sprachsteuerung namenlose Schaltflächen. */
body.sidebar-collapsed .sidebar .nav-label,
body.sidebar-collapsed .brand>span:last-child{position:absolute;width:1px;height:1px;
  margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.sidebar-collapsed .sidebar-head{flex-direction:column;gap:12px;margin:0 0 20px}
body.sidebar-collapsed .sidebar-toggle{margin:0}
body.sidebar-collapsed .sidebar nav a,
body.sidebar-collapsed .sidebar-bottom>a{justify-content:center;gap:0;padding:10px 0;position:relative}
body.sidebar-collapsed .sidebar nav .count{position:absolute;top:1px;right:4px;margin:0;font-size:9px;padding:0 4px}
body.sidebar-collapsed .profile{justify-content:center;gap:7px}
body.sidebar-collapsed .profile form{margin:0}

/* Unter 700px steht die Leiste ohnehin waagerecht über dem Inhalt; der
   eingeklappte Zustand wäre dort sinnlos und wird vollständig aufgehoben. */
@media(max-width:700px){
  .sidebar{overflow:visible;padding-bottom:8px}
  .sidebar-toggle{display:none}
  .sidebar-head{margin:0 0 13px}
  body.sidebar-collapsed .sidebar{width:100%;padding:16px 16px 8px}
  body.sidebar-collapsed .workspace{margin-left:0}
  body.sidebar-collapsed .sidebar .nav-label,
  body.sidebar-collapsed .brand>span:last-child{position:static;width:auto;height:auto;
    margin:0;overflow:visible;clip:auto;white-space:normal}
  body.sidebar-collapsed .sidebar nav a{justify-content:flex-start;gap:6px;padding:7px 10px}
}
