:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#263c35;background:#f7f5ee;font-size:17px;--green:#174d42;--muted:#68756d;--gold:#b59762;--line:#dcded3;--paper:#fffefb;--shadow:0 8px 30px #183d3210}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:.65rem .9rem;background:var(--paper);color:var(--green);min-height:44px}button:hover{background:#e8eee7}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #bc9a54;outline-offset:3px}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#286a59}.danger{color:#a83231}.quiet{color:var(--muted);font-size:.88rem;line-height:1.5}.small{font-size:.8rem}.eyebrow{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#8a7146;font-weight:700}h1,h2,h3,p{margin:0 0 .7rem}h1{font-family:Georgia,serif;font-size:2.1rem;font-weight:500}h2{font-size:1.3rem}h3{font-size:1.05rem}label{display:block;margin:.75rem 0 .3rem}input,select,textarea{border:1px solid #c7d0c6;background:#fffefa;color:inherit;border-radius:10px;padding:.7rem;width:100%;font-size:16px}textarea{resize:vertical;line-height:1.55}a{color:#126d60;text-underline-offset:3px}.welcome{max-width:530px;margin:8vh auto;padding:2rem;background:var(--paper);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.monogram{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:linear-gradient(135deg,#477f68,#153f35);color:#f8ebce;font-family:Georgia;font-size:44px;box-shadow:inset 0 0 0 1px #e2cf9b80;margin-bottom:1rem}.row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.row .grow{flex:1}.stack{display:grid;gap:1rem}.shell{display:grid;grid-template-columns:210px minmax(0,1fr);height:100dvh}.sidebar{padding:1.4rem .8rem;background:#ecede5;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:.35rem;overflow:auto}.brand{display:flex;align-items:center;gap:.8rem;margin-bottom:1.8rem;padding:0 .5rem}.brand .monogram{flex-shrink:0;width:40px;height:40px;font-size:30px;border-radius:12px;margin:0}.brand strong{font:22px Georgia}.sidebar button{background:transparent;text-align:left;border-color:transparent}.sidebar button.active{background:#d6e1d7;font-weight:700}.sidebar .bottom{margin-top:auto}.main{min-width:0;display:flex;flex-direction:column;min-height:0}.topbar{display:flex;align-items:center;gap:1rem;padding:1rem 1.7rem;border-bottom:1px solid var(--line);background:#fffefbca;min-height:79px}.topbar h1{font:600 1.15rem -apple-system,sans-serif;margin:0}.sync{margin-left:auto;max-width:50%;font-size:.78rem;color:var(--muted)}.content{padding:1.7rem;overflow:auto;flex:1;min-height:0}.dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card{border:1px solid var(--line);border-radius:18px;background:var(--paper);padding:1.25rem;box-shadow:var(--shadow)}.stat{font:38px Georgia;margin:.4rem 0}.item{padding:.85rem 0;border-bottom:1px solid #e6e7df;line-height:1.4}.item:last-child{border:0}.item strong{display:block}.item.court{border-left:4px solid #b4863a;padding-left:.7rem}.item.court strong{font-size:1.15rem}.urgent{color:#ab3f33}.badge{font-size:.73rem;border-radius:20px;padding:.25rem .55rem;background:#edf1e9;display:inline-block}.journal{display:grid;grid-template-columns:290px minmax(0,1fr);height:100%;min-height:0}.note-list{padding:1rem;border-right:1px solid var(--line);overflow:auto;background:#f0f1e9}.note-list .filters{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.note-row{display:block;text-align:left;width:100%;border:0;border-radius:12px;padding:.9rem;margin:.4rem 0;background:transparent}.note-row.active{background:#dce7dc;box-shadow:inset 3px 0 var(--green)}.note-row strong{display:block;line-height:1.3}.note-row small{display:block;color:var(--muted);margin-top:.4rem}.note-detail{min-width:0;display:flex;flex-direction:column;min-height:0;background:var(--paper)}.note-tools{padding:1rem 1.4rem;border-bottom:1px solid var(--line)}.note-tools input{font:600 1.3rem Georgia;border-color:transparent;background:transparent;padding:.2rem 0}.note-scroll{overflow:auto;padding:1.7rem;flex:1;min-height:0}.note-paper{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;font-size:18px;max-width:900px;margin:auto;color:#293a32}.note-editor{width:100%;height:100%;min-height:350px;border:0;background:transparent;border-radius:0;font:18px/1.5 -apple-system,sans-serif;resize:none;outline:none}.note-detail.editing .note-scroll{padding:1rem;overflow:hidden}.files{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap}.file-card{max-width:240px;overflow:hidden;word-break:break-word}.file-card img{width:220px;height:160px;object-fit:contain;border-radius:12px;background:#eef0e9;box-shadow:0 8px 18px #304a3e20}.file-link,.mail-link{color:#126d60;background:#e7eee9;border-radius:4px;cursor:pointer}.chat-layout{display:grid;grid-template-columns:240px minmax(0,1fr);height:100%}.chat-sidebar{padding:1rem;background:#f0f1e9;border-right:1px solid var(--line);overflow:auto}.chat-sidebar button{width:100%;text-align:left;margin:.3rem 0}.chat-main{display:flex;flex-direction:column;min-height:0;min-width:0}.chat-history{flex:1;overflow:auto;padding:1.5rem}.bubble{padding:1rem 1.2rem;border-radius:18px;line-height:1.55;max-width:85%;margin:.7rem 0;background:white;border:1px solid var(--line);overflow-wrap:anywhere;white-space:pre-wrap}.bubble.user{margin-left:auto;background:#dceade;border-color:#c8decb}.bubble .who{display:block;color:#688171;font-size:.7rem;letter-spacing:.07em;margin-bottom:.4rem}.composer{padding:1rem;border-top:1px solid var(--line);background:#f7f5ee}.composer textarea{max-height:160px;min-height:70px}.empty{padding:3rem 1.5rem;text-align:center;color:var(--muted)}#toast{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);max-width:90vw;background:#173f35;color:white;padding:.8rem 1rem;border-radius:12px;box-shadow:var(--shadow);z-index:20;display:none}dialog{border:1px solid var(--line);border-radius:20px;max-width:min(800px,95vw);max-height:90dvh;padding:1.5rem;box-shadow:0 24px 90px #10251d44;background:var(--paper);color:inherit}dialog::backdrop{background:#12352b66;backdrop-filter:blur(3px)}dialog iframe{width:75vw;max-width:100%;height:65dvh;border:0}dialog img{max-width:100%;max-height:70dvh}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.comparison pre{white-space:pre-wrap;max-height:45vh;overflow:auto;font:inherit}.mobile-back,.menu-toggle{display:none}.error{color:#a3322c;background:#fff0e9;padding:.8rem;border-radius:10px}.check{display:flex;align-items:center;gap:.65rem}.check input{width:22px;height:22px}.pill{border-radius:24px}.nav-label{font-size:.7rem;color:var(--muted);padding:1rem .5rem .3rem;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:1050px){.shell{grid-template-columns:195px minmax(0,1fr)}.journal{grid-template-columns:245px 1fr}.content{padding:1rem}.topbar{padding:.8rem 1rem}.sidebar{padding:1rem .5rem}.brand strong{font-size:19px}.chat-layout{grid-template-columns:190px 1fr}}
@media(max-width:720px){.shell{grid-template-columns:1fr}.sidebar{display:none;position:fixed;inset:0 auto 0 0;width:250px;z-index:10;box-shadow:10px 0 40px #0003}.shell.menu .sidebar{display:flex}.menu-toggle{display:block}.topbar{min-height:70px;padding-top:max(.7rem,env(safe-area-inset-top))}.topbar h1{font-size:1rem}.dashboard{grid-template-columns:1fr}.journal{grid-template-columns:1fr}.journal.selected .note-list{display:none}.journal:not(.selected) .note-detail{display:none}.mobile-back{display:inline-block}.note-tools{padding:.8rem}.note-scroll{padding:1rem}.chat-layout{grid-template-columns:1fr}.chat-layout.selected .chat-sidebar{display:none}.chat-layout:not(.selected) .chat-main{display:none}.bubble{max-width:94%}.chat-history{padding:1rem}.comparison{grid-template-columns:1fr}.welcome{margin:3vh .7rem;padding:1.5rem}.composer{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.sync{max-width:38%}.content{padding:.8rem}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s ease}}

.pairing-number{display:block;font-family:ui-monospace,monospace;font-size:clamp(1.1rem,5vw,1.5rem);letter-spacing:.06em;padding:1rem;border-radius:12px;background:#e5eee8;color:#174d42;text-align:center}.pairing-progress{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #ccc}.pairing-progress[hidden]{display:none}.pairing-progress button{margin:.3rem}
