:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#263449;background:#f6f7f8;font-size:15px;--green:#176b62;--line:#e3e8eb;--muted:#6c7887;--orange:#e99b55;--shadow:0 10px 30px #26344908;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}input,select,textarea{width:100%;padding:11px 13px;border:1px solid #d8e0e5;border-radius:9px;background:white;color:inherit}textarea{resize:vertical;min-height:95px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--green)}label{display:block;font-size:.9rem;font-weight:550;margin:12px 0 6px}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.check input{flex:none;margin-top:3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:white;border:1px solid transparent;border-radius:10px;padding:11px 17px;font-weight:600;white-space:normal;line-height:1.35;min-height:43px}.btn:hover{filter:brightness(.95)}.btn.secondary{background:white;color:#354354;border-color:#dfe5e9}.btn.soft{background:#e7f1ef;color:var(--green)}.btn.danger{background:#fff1ee;color:#a43926;border-color:#f6d8d1}.btn.small{padding:7px 11px;font-size:.85rem;min-height:34px}.btn.link{border:0;background:transparent;color:var(--green);padding:6px 3px}.shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:29px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:29px}.brand{display:flex;gap:10px;align-items:center;min-height:44px;font-size:21px;font-weight:760;letter-spacing:-.7px}.brand img{width:34px}.brand small{display:block;font-size:10px;letter-spacing:1.7px;color:var(--muted);font-weight:500}.nav{display:grid;gap:7px}.nav a{display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:9px;color:#657181;font-size:14px;font-weight:500}.nav a.active{background:#e8f2ef;color:var(--green);font-weight:650}.nav a:hover{background:#f3f6f7}.nav-icon{width:22px;font-size:18px;text-align:center}.sidebar-note{margin-top:auto;padding:17px 13px;border-radius:12px;background:#f6f8f7;font-size:12px;color:var(--muted)}.sidebar-note strong{display:block;color:#384e4b;margin-bottom:7px}.topbar{height:81px;border-bottom:1px solid var(--line);background:#ffffffdd;display:flex;justify-content:space-between;align-items:center;padding:0 38px;gap:16px}.crumb{color:#7a8490;font-size:13px}.top-actions{display:flex;align-items:center;gap:12px}.locale{width:130px;border:0;background:transparent;font-size:13px}.main{max-width:1390px;margin:auto;padding:34px 38px 65px;min-width:0}.hero{display:grid;grid-template-columns:1.35fr 1fr;min-height:319px;padding:38px 39px;background:#edf4ef;border:1px solid #e1ebe4;border-radius:19px;overflow:hidden;gap:22px;position:relative}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:var(--green);margin:0 0 17px}.hero h1{font-size:clamp(27px,2.7vw,42px);letter-spacing:-1.6px;line-height:1.18;color:#213c35;margin:0 0 17px;font-weight:740}.hero p.description{font-size:14px;color:#65786e;max-width:525px;line-height:1.7}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}.hero-art{position:relative;align-self:center;height:238px}.mock-card{position:absolute;border-radius:15px;box-shadow:0 15px 40px #35554816;border:1px solid #dbe7de;background:white}.mock-card.back{width:170px;height:169px;right:0;top:13px;transform:rotate(9deg);padding:20px;background:#f9f3e9}.mock-card.front{left:8px;top:6px;width:236px;padding:17px;transform:rotate(-5deg)}.mock-visual{height:111px;background:#f0f1ef;border-radius:8px;display:flex;align-items:center;justify-content:center;position:relative}.keyboard{width:156px;padding:8px;background:#c6d1cb;border-radius:7px;display:grid;grid-template-columns:repeat(8,1fr);gap:3px;transform:rotate(-7deg)}.key{height:12px;background:#fcfcf9;border-radius:2px}.key:nth-child(5n){background:#e2e7e0}.annotation-dot{position:absolute;right:26px;top:27px;width:47px;height:43px;border:2px solid #e99455;border-radius:50%}.tiny-line{height:6px;background:#dde5df;margin:12px 0;border-radius:3px}.tiny-line.short{width:66%}.step-chip{display:flex;align-items:center;gap:8px;font-size:11px;margin-top:12px;font-weight:650}.number-chip{background:#e6f2ec;color:var(--green);font-weight:750;width:23px;height:23px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center}.float-badge{position:absolute;right:5px;bottom:12px;background:white;border:1px solid #e0e7e2;padding:11px 15px;border-radius:13px;box-shadow:var(--shadow);font-size:11px;color:#486554}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:33px 0 19px}.section-head h2,.page-title{margin:0;color:#293547;font-size:24px;letter-spacing:-.6px;line-height:1.3}.section-head p,.subtitle{margin:7px 0 0;font-size:13px;color:var(--muted)}.searchbar{display:flex;gap:10px;margin:0 0 19px}.searchbar input{padding-left:15px;box-shadow:var(--shadow)}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.chip{border:1px solid #e1e5e8;background:#fff;border-radius:8px;padding:7px 13px;font-size:12px;color:#717c88}.chip.selected{background:#e9f1ee;border-color:#dce9e3;color:var(--green);font-weight:600}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.guide-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white;box-shadow:var(--shadow);transition:transform .16s,border-color .16s;cursor:pointer}.guide-card:hover{transform:translateY(-3px);border-color:#b5ccc4}.cover{height:149px;background:#eef1f0;display:flex;align-items:center;justify-content:center;position:relative}.cover.electronics{background:#e7eeec}.cover.workshop{background:#f3eee6}.cover.documentation{background:#e9edf4}.cover .cover-icon{font-size:52px;color:#557870;opacity:.7;line-height:1}.cover .pill{position:absolute;top:12px;left:12px;background:#fffffff0;color:#56676a;font-size:10px}.card-body{padding:17px 18px}.card-body h3{font-size:16px;line-height:1.4;letter-spacing:-.2px;margin:0 0 14px;color:#29384a;font-weight:650;min-height:46px}.card-meta{display:flex;justify-content:space-between;gap:12px;color:#87909b;font-size:11px}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:22px;height:22px;background:#e9eee9;color:#5a7567;font-size:10px;font-weight:750;margin-right:5px}.pill{display:inline-block;padding:4px 9px;border-radius:6px;background:#edf3f0;color:#547066;font-size:11px;font-weight:500}.pill.warn{background:#fff1df;color:#97622e}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:20px}.how{display:grid;grid-template-columns:35px 1fr;gap:12px}.how h3{font-size:13px;margin:0 0 5px;font-weight:650}.how p{font-size:12px;color:#86908d;margin:0;line-height:1.6}.how .number-chip{width:31px;height:31px}.footnote{color:#929b9b;font-size:11px;margin:32px 0 0}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:23px;box-shadow:var(--shadow);min-width:0}.two-column{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,1fr);gap:24px;align-items:start;margin-top:26px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.capture-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:6px 0 21px}.capture-button{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;border:1px dashed #bdd2c8;border-radius:12px;background:#f4f8f5;min-height:94px;padding:12px;font-size:12px;color:#3f6b5e}.capture-button span{font-size:22px}.capture-items{display:grid;gap:14px}.capture-item{border:1px solid var(--line);border-radius:11px;padding:13px;display:grid;grid-template-columns:98px 1fr;gap:15px}.capture-item img,.capture-item video{width:98px;max-height:98px;object-fit:cover;border-radius:7px}.capture-item audio{max-width:98px}.capture-item small{font-size:10px;color:var(--muted)}.capture-item textarea{font-size:12px;min-height:65px;padding:8px}.empty{padding:46px 20px;text-align:center;color:#92a098;border:1px dashed #dae5df;border-radius:12px;font-size:13px}.alert{padding:13px 16px;background:#fff6e8;border:1px solid #f0e0bf;border-radius:9px;color:#856132;font-size:12px;margin:16px 0}.alert.info{background:#edf5f3;border-color:#d5e6e0;color:#446b5e}.editor-layout{display:grid;grid-template-columns:229px minmax(0,1fr);gap:22px;margin-top:25px}.step-nav{display:grid;gap:8px;margin:16px 0}.step-nav button{display:flex;gap:10px;text-align:left;align-items:center;border:1px solid transparent;border-radius:9px;background:#f6f8f7;padding:12px 10px;color:#697a73;width:100%;font-size:12px}.step-nav button.active{border-color:#a9c9bb;color:#2a6452;background:#edf5ee}.step-nav .step-label{flex:1}.step-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.step-top h2{margin:0;font-size:20px;letter-spacing:-.3px}.step-body p{white-space:pre-wrap}.step-media{margin-top:20px}.annotation-stage{position:relative;max-width:100%;touch-action:none;background:#f1f5f2;border-radius:10px;overflow:hidden;margin:12px 0}.annotation-stage img{display:block;width:100%;height:auto}.annotation-stage svg{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair}.annotation-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.annotation-controls select{width:140px}.annotation-controls input{width:155px}.media-block video,.media-block img{max-width:100%;border-radius:10px}.media-block video{max-height:400px;width:100%;background:#182b23}.media-block audio{width:100%;margin:10px 0}.reader{max-width:875px;margin:0 auto}.reader-header h1{font-size:34px;line-height:1.22;letter-spacing:-1px;margin:15px 0}.reader-intro{font-size:16px;color:#718179;line-height:1.8}.reader .panel{margin:22px 0}.reader-step h2{font-size:21px;margin:0 0 16px;display:flex;align-items:center;gap:12px}.reader-step p{white-space:pre-wrap}.reader-step ul{padding-left:22px}.reader-step li{margin:8px 0}.level-selector{display:flex;gap:7px;margin:20px 0;flex-wrap:wrap}.level-selector button{flex:1;min-width:120px}.result{padding:18px 20px;background:white;border:1px solid var(--line);border-radius:11px;margin:12px 0;cursor:pointer}.result h3{margin:0 0 8px;font-size:16px}.result p{font-size:13px;color:#718276;white-space:pre-wrap}.loading{padding:50px;text-align:center;color:#859489}.hidden{display:none!important}dialog{border:1px solid #dce7df;border-radius:16px;padding:28px;max-width:500px;width:calc(100% - 30px);box-shadow:0 30px 130px #1b342944;color:#283f35}dialog::backdrop{background:#20393177;backdrop-filter:blur(3px)}dialog h2{margin:0 0 17px;font-size:24px}dialog .actions{justify-content:flex-end}.modal-head{display:flex;justify-content:space-between;gap:15px}.close{border:0;background:transparent;font-size:24px;line-height:1;color:#859489;padding:5px}.badge-list{display:grid;gap:11px;margin-top:15px}.badge-list div{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#7b887f;border-bottom:1px solid #edf0ee;padding-bottom:11px}.progress-box{padding:20px;border-radius:12px;background:#edf5f0;margin:22px 0}.progress-line{height:5px;background:#dbece2;border-radius:4px;overflow:hidden;margin-top:13px}.progress-line:after{content:"";display:block;background:#559d80;width:35%;height:100%;animation:slide 1.5s infinite linear}@keyframes slide{from{transform:translateX(-100%)}to{transform:translateX(380%)}}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);width:max-content;max-width:min(640px,calc(100vw - 28px));background:#263d33;color:white;border-radius:12px;padding:13px 20px;font-size:16px;line-height:1.45;overflow-wrap:anywhere;box-shadow:0 10px 40px #14291b33;display:none;z-index:1000}#toast.visible{display:block}.recording{background:#bd4b3b!important;color:white!important}.recording-label{color:#bc5145;font-weight:650;font-size:13px;margin:8px 0}.toolbar{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;align-items:center}.toolbar .actions{margin:0}.small-text{font-size:12px;color:var(--muted)}.source-link{color:var(--green);text-decoration:underline}.annotation-view svg{cursor:default}.version-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:13px 0}.back-link{font-size:12px;color:var(--muted)}.status-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.notice-bar{padding:8px 15px;background:#e9f1ee;color:#647e71;font-size:11px;border-radius:7px;margin-top:20px}.mobile-brand{display:none}.footer-actions{margin-top:25px;border-top:1px solid var(--line);padding-top:20px}.auth-switch{font-size:12px;color:var(--green);cursor:pointer}.record-preview{max-width:100%;max-height:300px;border-radius:10px}.block-meta{display:flex;align-items:center;justify-content:space-between;margin:8px 0;gap:10px}.form-error{color:#a23d2d;font-size:12px;white-space:pre-wrap;max-height:120px;overflow:auto}.tabline{display:flex;gap:8px;margin:17px 0}.tabline button{border:0;background:#edf3ef;color:#527465;border-radius:6px;padding:8px 13px;font-size:12px}.table-scroll{overflow:auto}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;background:#f4f7f5;border-radius:8px;padding:12px}.caption{font-size:12px;color:var(--muted);margin:7px 0}
@media(min-width:1500px){.main{padding:40px 55px}.hero{padding:48px}.cards{gap:25px}}
@media(max-width:1150px){.shell{grid-template-columns:197px 1fr}.sidebar{padding:24px 13px}.brand{font-size:18px}.main{padding:26px}.topbar{padding:0 26px}.hero{padding:28px;grid-template-columns:1.4fr 1fr}.hero-art{transform:scale(.86);transform-origin:center}.cards{gap:13px}.card-body{padding:14px}.two-column{grid-template-columns:1.6fr 1fr}.editor-layout{grid-template-columns:190px minmax(0,1fr)}.capture-buttons{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.shell{display:block}.sidebar{height:auto;position:static;padding:14px 20px;flex-direction:row;align-items:center;justify-content:space-between;border-right:0;border-bottom:1px solid var(--line);gap:10px}.brand small,.sidebar-note{display:none}.nav{display:flex;gap:4px}.nav a{padding:9px;font-size:0;gap:0}.nav .nav-icon{font-size:21px}.sidebar>.btn{display:none}.topbar{height:60px;padding:0 21px}.main{padding:23px 20px}.hero{grid-template-columns:1.25fr 1fr;min-height:280px;padding:27px}.hero-art{transform:scale(.85)}.hero h1{font-size:29px}.cards{grid-template-columns:repeat(2,1fr)}.cards .guide-card:last-child:nth-child(odd){grid-column:auto}.how-grid{gap:13px}.two-column{grid-template-columns:1fr}.two-column>.panel:last-child{order:-1}.editor-layout{grid-template-columns:1fr}.editor-layout>aside{padding:16px}.step-nav{display:flex;overflow:auto;max-width:100%}.step-nav button{min-width:145px;max-width:190px}.editor-layout>aside .btn{width:auto}.field-grid{gap:0 10px}.crumb{font-size:12px}.capture-buttons{grid-template-columns:repeat(4,1fr)}}
@media(max-width:570px){.sidebar{padding:13px 15px}.brand{font-size:19px}.brand img{width:29px}.nav a{padding:8px 5px}.topbar{padding:0 15px}.crumb{font-size:11px;max-width:110px}.locale{width:109px;font-size:12px;padding:7px}.top-actions{gap:3px}.top-actions .btn{font-size:11px;padding:8px 10px;min-height:35px}.main{padding:20px 15px 55px}.hero{display:block;padding:27px 24px}.hero h1{font-size:31px;letter-spacing:-1px}.hero p.description{font-size:13px}.hero-art{height:201px;width:280px;margin:17px auto -7px;transform:scale(.84);transform-origin:center center}.hero .actions{margin-top:16px}.hero .btn{font-size:12px}.section-head{align-items:flex-start;margin-top:28px}.section-head h2,.page-title{font-size:22px}.section-head p{font-size:12px}.cards{grid-template-columns:1fr}.cover{height:167px}.card-body h3{min-height:0;font-size:17px}.how-grid{grid-template-columns:1fr;gap:20px}.searchbar .btn{padding:10px 14px}.capture-buttons{grid-template-columns:repeat(2,1fr)}.panel{padding:18px}.field-grid{grid-template-columns:1fr}.capture-item{grid-template-columns:80px minmax(0,1fr);gap:10px}.capture-item img,.capture-item video{width:80px}.reader-header h1{font-size:28px}.reader-step h2{font-size:19px}.toolbar .actions{gap:6px}.toolbar .btn{font-size:12px;padding:9px 12px}.editor-layout{gap:15px}.annotation-controls select,.annotation-controls input{width:125px}.step-nav button{min-width:130px}.card-meta{font-size:12px}.chips{gap:6px}.chip{font-size:11px}.check{font-size:12px}.reader .panel{margin:15px 0}.step-top{align-items:flex-start}.step-top .actions{margin-top:0;gap:5px}.caption{font-size:11px}.notice-bar{font-size:10px}.top-actions .user-button{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Visual QA polish: tighter mobile hierarchy, stronger empty states and contrast. */
:root{--muted:#5f6d7b}
.empty{padding:34px 28px;color:#596b63;border-style:solid;border-color:#dce6e1;background:#fbfcfb;font-size:13px;grid-column:1/-1;min-height:138px;display:flex;align-items:center;justify-content:center}
.empty .empty-inner{max-width:520px;text-align:center}.empty strong{display:block;color:#293b34;font-size:17px;margin-bottom:6px}.empty .btn{margin-top:14px}
.chip{color:#596674}.chip.selected{color:#145f57;border-color:#cbded6;background:#e5f0ec}.section-head p,.subtitle,.small-text{color:#64717d}
@media(max-width:700px){
  .shell{display:block;padding-bottom:72px}.sidebar{position:fixed;z-index:60;left:0;right:0;top:auto;bottom:0;height:64px;padding:7px 10px;border-right:0;border-top:1px solid var(--line);display:block;background:#fffffff5;backdrop-filter:blur(14px)}
  .sidebar .brand,.sidebar>.btn,.sidebar-note{display:none}.nav{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.nav a{padding:7px 4px;gap:2px;flex-direction:column;justify-content:center;font-size:10px;line-height:1.1;border-radius:9px}.nav-icon{font-size:17px;height:20px}
  .topbar{height:auto;min-height:64px;padding:9px 14px;gap:8px;align-items:center}.crumb{display:none}.top-actions{width:100%;gap:7px;justify-content:flex-end}.locale{width:102px;padding:8px 6px;border:1px solid #dfe5e9;border-radius:9px;background:white}.top-actions .btn.small{padding:8px 10px;font-size:12px;white-space:nowrap;min-height:38px}
  .main{padding:18px 14px 42px}.hero{display:block;min-height:0;padding:24px 20px 22px;border-radius:16px}.hero h1{font-size:31px;line-height:1.08;letter-spacing:-1.1px;margin-bottom:12px}.hero p.description{font-size:13px;line-height:1.55;margin-bottom:0}.hero .actions{margin-top:16px}.hero .actions .btn{flex:1;white-space:nowrap;padding:10px 12px}.hero-art{height:128px;margin-top:14px;transform:scale(.72);transform-origin:top center}.mock-card.front{left:50%;transform:translateX(-58%) rotate(-4deg)}.mock-card.back{right:8%;}.float-badge{right:6%;bottom:5px}
  .section-head{margin:22px 0 14px}.section-head h2,.page-title{font-size:21px}.searchbar{gap:7px}.cards{grid-template-columns:1fr}.empty{min-height:150px;padding:26px 18px}.how-grid{grid-template-columns:1fr;gap:16px}
}

/* SF1.9: secondary, persistent contact in the shared sidebar/mobile navigation. */
.nav a.site-contact-action{min-height:44px;color:var(--green);font-weight:650;border:1px solid #d4e6df;background:#edf5f1}
.nav a.site-contact-action:hover{background:#e1eee8;border-color:#b8d3c6}
@media(max-width:700px){.nav{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}}

/* Shared targets keep compact controls usable with touch and keyboard. */
.btn,.btn.small,.top-actions .btn.small,.chip,.close,.locale,.nav a,.tabline button,.back-link{min-height:44px;min-width:44px}
.close{flex:none}.check{min-height:44px;align-items:center}.check input{margin-top:0}
button:focus-visible,a:focus-visible,[role=link]:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.result,.reader-step,.step-label,.block-meta,.page-title{overflow-wrap:anywhere}
#memory-status:empty{display:none}#memory-status{margin-bottom:0;white-space:pre-wrap;overflow-wrap:anywhere}
[hidden]{display:none!important}
@media(max-width:570px){.top-actions{flex-wrap:wrap}.step-top{flex-wrap:wrap}.step-nav .step-label{min-width:0}.back-link{display:inline-flex;align-items:center}}


/* Safe assistant response formatting; source links remain visible on narrow screens. */
.assistant-content { overflow-wrap: anywhere; }
.assistant-content h3, .assistant-content h4, .assistant-content h5, .assistant-content h6 { margin: 1.2em 0 .5em; line-height: 1.35; }
.assistant-content p, .assistant-content ul, .assistant-content ol { margin: .75em 0; }
.assistant-content li { margin: .4em 0; }
.assistant-content a { text-decoration: underline; text-underline-offset: .15em; }
.assistant-content code { font-family: ui-monospace, monospace; font-size: .92em; }
.assistant-content pre { max-width: 100%; overflow: auto; white-space: pre-wrap; padding: 12px; border: 1px solid currentColor; border-radius: 8px; }
.assistant-content > :first-child { margin-top: 0; }
.assistant-content > :last-child { margin-bottom: 0; }

/* Keep the full account name available while preventing centered clipping on narrow screens. */
@media(max-width:570px){.top-actions .btn.user-button{display:block;text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(12rem,40vw)}}

.source-observation{margin:20px 0}.source-observation pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:60vh;overflow:auto;background:#f7f9f8;border:1px solid var(--line);border-radius:10px;padding:14px}

/* Brand attribution for StepFoundry */
.sidebar .sokkos-brand-credit{font-size:10px;font-weight:700;color:var(--green);white-space:nowrap;align-self:flex-start;margin-top:-21px}
.sidebar .sokkos-brand-credit:hover,.sidebar .sokkos-brand-credit:focus-visible{text-decoration:underline}
.sokkos-site-footer{padding:14px 38px 24px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
@media(max-width:680px){.sidebar .sokkos-brand-credit{margin-top:0;font-size:9px}.sokkos-site-footer{padding:12px 16px 24px}}

/* Responsive credit: tablet header and phone topbar; never consume bottom-nav height. */
.topbar .sokkos-brand-credit-mobile{display:none}
@media(min-width:701px) and (max-width:850px){.sidebar .sokkos-brand-credit{margin-top:0;font-size:9px}}
@media(max-width:700px){.sidebar .sokkos-brand-credit{display:none}.topbar{flex-wrap:wrap}.topbar .sokkos-brand-credit-mobile{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;font-size:9px;font-weight:700;white-space:nowrap;color:var(--green)}.topbar .top-actions{flex:1 1 100%;min-width:0}}
@media(max-width:700px){.sokkos-site-footer{scroll-margin-block-end:72px}}

/* Current library-first novice path. Preserve private editor and shared sign-in. */
.library-welcome{max-width:780px;padding-block:clamp(24px,7vw,80px)}
.library-welcome h1{font-size:clamp(32px,5vw,54px);line-height:1.15;letter-spacing:-.035em}
.library-welcome .description{font-size:19px;line-height:1.65;max-width:62ch}
.library-welcome .actions{margin-block:28px 16px}.library-coming{font-size:16px;line-height:1.6;color:var(--muted);max-width:60ch;margin-top:36px}
.nav a,.topbar button,.locale,.sokkos-brand-credit,.sokkos-brand-credit-mobile,.sokkos-site-footer{font-size:16px}
.nav a,.topbar button,.locale,#write-manual{min-height:44px}.locale{max-width:150px}
@media(max-width:850px){.nav a span:last-child{display:inline;font-size:16px}.nav{gap:6px}.nav a{min-width:0;white-space:normal;text-align:center}.topbar{flex-wrap:wrap}.top-actions{flex-wrap:wrap}.brand span{display:inline}.sokkos-brand-credit-mobile{display:none}}
@media(max-width:550px){.library-welcome{padding-top:18px}.library-welcome .btn{width:100%;justify-content:center}.main{padding-inline:18px}.topbar .crumb{font-size:16px}.top-actions{gap:8px}.nav a{padding:10px 8px}.library-welcome button{font-size:16px}}

/* Owner acceptance: readable novice path and configured, neutral site credit. */
:root{font-size:16px}
.library-welcome .eyebrow,.topbar .crumb,.top-actions .btn.small,.top-actions .locale{font-size:16px}
.sidebar .sokkos-brand-credit,.topbar .sokkos-brand-credit-mobile{font-size:16px;white-space:normal;min-height:44px;align-items:center}
.sokkos-site-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:16px}
.sokkos-site-footer a{display:inline-flex;align-items:center;min-height:44px;max-width:100%}
@media(max-width:850px){.sidebar .sokkos-brand-credit{max-width:15ch}.nav a{font-size:16px}.topbar{height:auto;min-height:81px;padding-block:12px}}
@media(max-width:700px){.topbar .sokkos-brand-credit-mobile{max-width:100%}.sidebar .sokkos-brand-credit{display:none}.nav a{font-size:16px}.sidebar{height:auto;min-height:64px}.shell{padding-bottom:86px}}

/* Community browsing uses ordinary search and keeps rare controls optional. */
.library-welcome a[data-nav="/community"],.catalog-links a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;font-size:16px;text-decoration:underline;text-underline-offset:.2em}
.catalog-page{font-size:16px}.catalog-page .subtitle,.catalog-page label,.catalog-page .small-text,.catalog-page .card-meta,.catalog-page .avatar,.catalog-page .pill,.catalog-page .empty,.catalog-page .alert,.catalog-page .btn{font-size:16px}
.catalog-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-block:16px}
.catalog-options{margin:0 0 24px;border:1px solid var(--line);border-radius:10px;padding:0 16px}
.catalog-options summary{min-height:44px;padding-block:10px;cursor:pointer;font-size:16px}
.catalog-page input,.catalog-page select,.catalog-page button{min-height:44px;min-width:44px}
.catalog-page .card-meta{flex-wrap:wrap}.catalog-page .avatar{min-width:28px;min-height:28px}
@media(max-width:570px){.catalog-page .searchbar{flex-wrap:wrap}.catalog-page .searchbar input{flex:1 1 180px}.catalog-page .searchbar button{flex:0 0 auto}}

/* The simple manual path keeps mobile text and controls readable. */
.manual-editor .small-text,.manual-editor .pill,.manual-editor .number-chip,.manual-editor label,
.manual-editor button,.manual-editor input,.manual-editor select,.manual-editor textarea{font-size:16px}
.manual-editor button,.manual-editor select,.manual-editor input:not([type=checkbox]),
.manual-editor summary{min-height:44px}
.manual-editor .manual-more{margin-top:24px;border-top:1px solid var(--line);padding-top:12px}
.manual-editor .manual-more summary{display:flex;align-items:center;cursor:pointer}
.manual-editor .manual-more[open] summary{margin-bottom:16px}
.manual-editor .manual-picture{margin:16px 0}
.manual-editor .manual-picture img{max-width:100%;height:auto}
.manual-editor .step-label{overflow-wrap:anywhere}
.manual-editor .editor-layout>*{min-width:0}

.manual-picture-dialog,.manual-picture-dialog .small-text,.manual-picture-dialog label,.manual-picture-dialog input,.manual-picture-dialog select,.manual-picture-dialog button{font-size:16px}
.manual-picture-dialog button,.manual-picture-dialog input:not([type=checkbox]),.manual-picture-dialog select,.manual-picture-dialog label.check{min-height:44px}
.manual-picture-dialog .form-error{overflow-wrap:anywhere}

/* Measured authoring-to-publication path: text stays readable at every width. */
.manual-editor .toolbar .btn{font-size:16px}
dialog .small-text,dialog label,dialog .check,dialog .form-error{font-size:16px}
.reader .small-text,.reader .pill,.reader .number-chip,.reader .back-link,
.reader .btn.small,.reader label,.reader .caption,.reader a,.reader small{font-size:16px}
.reader .back-link{display:inline-flex;align-items:center;min-width:44px;min-height:44px}

/* Keep the instruction ahead of infrequent reading and export controls. */
.reader .reader-options{margin-top:16px;border:1px solid var(--line);border-radius:10px;padding:0 16px}
.reader .reader-options summary{min-height:44px;display:list-item;align-content:center;cursor:pointer;font-size:16px;overflow-wrap:anywhere}
.reader .reader-options[open]{padding-bottom:16px}
.reader .reader-options[open] summary{margin-bottom:16px}
.reader .reader-options .actions{margin-bottom:0}
.reader .reader-options .reader-languages>*{min-width:0}
.reader .reader-tools h2{margin-top:0}

/* Original authors and exact terms remain visible on personal copies. */
.reader-sources{font-size:16px;overflow-wrap:anywhere}.reader-sources h2{font-size:21px;margin-top:0}.reader-sources h3{font-size:18px;margin:0}.reader-sources p{margin:8px 0}.reader-sources input,.reader-sources button,.reader-sources summary{min-height:44px;font-size:16px}.reader-sources a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;max-width:100%;color:var(--green);text-decoration:underline;text-underline-offset:.15em;overflow-wrap:anywhere}.source-attribution{border-top:1px solid var(--line);padding-block:16px}.source-extra-authors summary{cursor:pointer;align-content:center}.source-extra-authors ul{margin:0;padding-inline-start:22px}.reader-sources .source-rights-note{white-space:pre-wrap}.reader-sources [data-source-more]{margin-top:8px}

/* Source-language fallbacks carry licensing context; keep them legible in the reader. */
.reader-header .small-text,.reader-header .alert{font-size:16px;line-height:1.5}
