/* Shared readability and responsive refinements */
html{font-size:16px;overflow-x:hidden}
body{font-size:15px;line-height:1.5;overflow-x:clip}
button,input,select,textarea{font-family:var(--font)}
.sidebar{overflow-y:auto;scrollbar-width:thin}
.brand-name{font-size:17px}
.brand-caption{font-size:12px}
.workspace-switcher{min-height:62px}
.workspace-copy strong{font-size:13px}
.workspace-copy span{font-size:12px}
.nav-group-label{font-size:12px;letter-spacing:.9px}
.nav-link{min-height:42px;font-size:13px}
.nav-link .nav-icon svg{width:18px;height:18px}
.nav-count,.demo-nav-badge{font-size:12px}
.source-card{font-size:12px}
.source-card-top{font-size:12px}
.source-card strong{font-size:13px}
.profile-row strong{font-size:12px}
.profile-row span{font-size:12px}
.topbar{height:66px}
.breadcrumbs{font-size:13px}
.project-picker label>span{font-size:12px}
.project-picker select{font-size:12px}
.storage-indicator{font-size:12px}
.topbar-actions .button{font-size:12px}
.page-content{max-width:1680px;margin:0 auto;padding:28px clamp(20px,3vw,48px) 42px}
.page-intro h1,.workspace-title-row h1{font-size:30px}
.page-lede{font-size:14px;line-height:1.6}
.eyebrow,.side-overline{font-size:12px;letter-spacing:.9px}
.button{min-height:40px;font-size:13px}
.button-small{min-height:34px;font-size:12px}
.metric-label{font-size:12px}
.metric-card strong{font-size:20px}
.metric-card small{font-size:12px}
.catalog-heading h2{font-size:21px}
.catalog-heading p,.catalog-heading .page-lede{font-size:13px}
.search-bar input,.filter-control select,.filter-control span,.reset-filters{font-size:12px}
.results-header,.pagination,.page-size{font-size:12px}
.catalog-table th{font-size:12px}
.catalog-row td{font-size:12px}
.item-name-button{font-size:13px}
.item-category{font-size:12px}
.price-cell{font-size:12px}
.draft-side h3{font-size:18px}
.project-name-label{font-size:12px}
.project-name-input{font-size:13px}
.draft-list-head{font-size:12px}
.quick-item-title,.quick-item-total{font-size:12px}
.quick-item-meta,.quick-empty span{font-size:12px}
.side-note{font-size:12px}
.folder-intro h1{font-size:30px}
.folder-card-title h2{font-size:16px}
.folder-card-title p{font-size:12px}
.folder-status,.folder-metric span,.folder-card-footer small{font-size:12px}
.folder-metric strong{font-size:13px}
.folder-open-button{font-size:12px}
.workspace-summary-strip{font-size:12px}
.workspace-summary-strip b{font-size:13px}
.project-tab{font-size:12px;padding:13px 13px 11px}
.workspace-card-heading h2{font-size:19px}
.workspace-card-heading p{font-size:12px}
.workspace-field,.workspace-field input,.workspace-field select,.workspace-field textarea{font-size:12px}
.workspace-field input,.workspace-field select,.workspace-field textarea{min-height:42px}
.workspace-meta-line,.workspace-meta-line code,.workspace-meta-line b{font-size:12px}
.draft-intro h2{font-size:21px}
.draft-intro .page-lede{font-size:13px}
.recap-table th{font-size:12px}
.recap-table td{font-size:12px}
.curve-table th,.curve-legacy-details summary{font-size:12px}
.curve-table td,.curve-work-cell strong{font-size:12px}
.curve-cell-input input{font-size:12px}
.coming-soon-card p{font-size:13px}
.calculator-card,.guide-card,.info-card{font-size:13px}
.app-footer{font-size:12px}

/* New product surfaces */
.community-view{max-width:1440px;margin:0 auto}
.home-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);min-height:395px;border-radius:24px;background:linear-gradient(120deg,#163e31 0%,#1b4938 57%,#286148 100%);color:#fff;box-shadow:0 22px 55px rgba(28,64,47,.16)}
.home-hero:before{position:absolute;z-index:-1;inset:0;content:"";background:radial-gradient(circle at 75% 10%,rgba(192,223,145,.16),transparent 30%),radial-gradient(circle at 12% 115%,rgba(141,189,130,.13),transparent 40%)}
.home-hero-copy{align-self:center;padding:44px 30px 42px clamp(30px,5vw,68px)}
.home-pill{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(221,237,212,.23);border-radius:99px;padding:7px 11px;color:#d2e4c8;font-size:12px;font-weight:750;letter-spacing:1px}
.home-pill i,.local-status-chip i{width:7px;height:7px;border-radius:50%;background:#c3e66b;box-shadow:0 0 0 4px rgba(195,230,107,.12)}
.home-hero h1{max-width:700px;margin:19px 0 13px;color:#fff;font-size:clamp(34px,4vw,52px);line-height:1.07;letter-spacing:-1.8px}
.home-hero h1 em{color:#d4ed88;font-style:normal}
.home-hero-copy>p{max-width:570px;margin:0;color:rgba(243,248,242,.78);font-size:15px;line-height:1.7}
.home-hero-actions{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-top:24px}
.home-hero-actions .button{min-height:46px;padding:0 17px;font-size:13px}
.home-outline-button{border:1px solid rgba(235,243,236,.36);background:rgba(255,255,255,.04);color:#fff}
.home-outline-button:hover{background:rgba(255,255,255,.1)}
.home-trust-line{display:flex;align-items:center;gap:8px;margin-top:23px;color:#c7d8cc;font-size:12px;line-height:1.4}
.home-trust-line span{display:grid;width:17px;height:17px;place-items:center;border-radius:50%;background:rgba(211,238,128,.16);color:#d4ed88;font-size:12px;font-weight:800}
.home-hero-visual{position:relative;display:grid;place-items:center;min-height:350px;padding:22px}
.home-visual-grid{position:absolute;inset:14% 6% 10% 0;opacity:.3;background-image:linear-gradient(rgba(237,246,233,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(237,246,233,.13) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse at center,#000 24%,transparent 75%)}
.home-sheet-card{position:relative;width:min(340px,94%);padding:20px 22px 17px;border:1px solid rgba(255,255,255,.6);border-radius:16px;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(246,249,240,.95));color:#304236;box-shadow:0 25px 50px rgba(4,28,17,.25);transform:rotate(1.7deg)}
.sheet-top{display:flex;align-items:center;justify-content:space-between;color:#89958a;font-size:12px;font-weight:800;letter-spacing:.8px}
.sheet-top b{padding:4px 7px;border-radius:5px;background:#edf5e5;color:#52704a;font-size:12px}
.sheet-title{margin:13px 0 10px;color:#314537;font-size:17px;font-weight:750}
.sheet-rule{height:1px;margin-bottom:8px;background:#e7ece4}
.sheet-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf0eb;color:#7b897d;font-size:12px}
.sheet-row strong{color:#394b3c;font-size:12px}
.sheet-total{display:flex;justify-content:space-between;gap:12px;margin-top:12px;color:#879287;font-size:12px}
.sheet-total strong{color:#386444;font-size:12px}
.sheet-bars{display:flex;align-items:flex-end;gap:7px;height:44px;margin-top:14px;padding:7px 8px 0;border-radius:7px;background:linear-gradient(180deg,#f7faf5,#fff)}
.sheet-bars i{flex:1;border-radius:4px 4px 0 0;background:#9bc378}
.sheet-bars i:nth-child(1){height:16%}.sheet-bars i:nth-child(2){height:27%}.sheet-bars i:nth-child(3){height:34%}.sheet-bars i:nth-child(4){height:49%}.sheet-bars i:nth-child(5){height:55%}.sheet-bars i:nth-child(6){height:68%}.sheet-bars i:nth-child(7){height:79%}.sheet-bars i:nth-child(8){height:95%}
.home-float-note{position:absolute;right:5%;bottom:13%;display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid rgba(255,255,255,.3);border-radius:12px;background:rgba(237,246,232,.95);color:#35503c;box-shadow:0 14px 28px rgba(12,33,18,.2);transform:rotate(-2deg)}
.home-float-icon{display:grid;width:31px;height:31px;place-items:center;border-radius:9px;background:#e0eed7;color:#416b43;font-size:17px}
.home-float-note small,.home-float-note strong{display:block}.home-float-note small{color:#788a79;font-size:12px;font-weight:800;letter-spacing:.7px}.home-float-note strong{margin-top:2px;font-size:12px}
.home-section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:34px 0 16px}
.community-eyebrow{display:block;color:#63806a;font-size:12px;font-weight:800;letter-spacing:1.1px}
.home-section-heading h2,.home-workflow-card h2,.home-partner-strip h2{margin:5px 0;color:#26372b;font-size:22px;line-height:1.25;letter-spacing:-.55px}
.home-section-heading p,.home-partner-strip p{margin:0;color:#78857b;font-size:13px}
.home-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-feature-card{position:relative;min-width:0;display:flex;flex-direction:column;align-items:flex-start;min-height:216px;padding:18px;border:1px solid #e5ebe4;border-radius:15px;background:#fff;text-align:left;box-shadow:0 8px 24px rgba(24,44,34,.035);transition:transform .18s,border-color .18s,box-shadow .18s}
.home-feature-card:hover{transform:translateY(-3px);border-color:#bfd2bc;box-shadow:0 14px 28px rgba(24,44,34,.075)}
.feature-number{position:absolute;top:18px;right:17px;color:#b2bcb0;font-size:12px;font-weight:750;letter-spacing:.7px}
.feature-icon{display:grid;width:41px;height:41px;place-items:center;border-radius:12px;font-size:20px}
.feature-green{background:#e8f3e8;color:#3b7047}.feature-sand{background:#f7f0dc;color:#90733c}.feature-blue{background:#e8f0fc;color:#4b6b96}.feature-peach{background:#ffede3;color:#a86a4d}
.home-feature-card>strong{margin-top:15px;color:#304135;font-size:15px}
.home-feature-card>small{margin-top:6px;color:#7b887d;font-size:12px;line-height:1.55}
.feature-arrow{margin-top:auto;padding-top:14px;color:#47754e;font-size:12px;font-weight:750}
.home-lower-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);gap:14px;margin-top:16px}
.home-workflow-card,.home-local-card{border:1px solid #e6ebe4;border-radius:15px;background:#fff;padding:20px}
.home-workflow-card h2{margin-bottom:16px;font-size:19px}
.workflow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.workflow-steps>div{display:flex;align-items:flex-start;gap:10px}
.workflow-steps>div>b{display:grid;width:27px;height:27px;flex:none;place-items:center;border:1px solid #dce8d9;border-radius:50%;background:#f1f7ee;color:#48714c;font-size:12px}
.workflow-steps strong,.workflow-steps small{display:block}.workflow-steps strong{color:#425246;font-size:12px}.workflow-steps small{margin-top:4px;color:#859087;font-size:12px;line-height:1.45}
.home-local-card{display:flex;align-items:flex-start;gap:12px;background:#f7faf4}
.local-card-mark{display:grid;width:29px;height:29px;flex:none;place-items:center;border:1px solid #dbe8d7;border-radius:50%;background:#edf4e9;color:#4f704a;font-weight:800}
.home-local-card h3{margin:5px 0;color:#344638;font-size:15px}
.home-local-card p{margin:0;color:#78867a;font-size:12px;line-height:1.55}
.text-link-button{border:0;background:none;padding:4px 0;color:#42754c;font-size:12px;font-weight:750;text-align:left}
.home-local-card .text-link-button{margin-top:8px}
.home-partner-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:20px 23px;border:1px solid #e2eae0;border-radius:15px;background:linear-gradient(100deg,#f6f9f2,#fff)}
.home-partner-strip h2{margin:4px 0;font-size:18px}.home-partner-strip p{font-size:12px}

.community-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px}
.community-page-head h1{margin:6px 0;color:#26372b;font-size:31px;line-height:1.16;letter-spacing:-.8px}
.community-page-head p{max-width:730px;margin:0;color:#78857b;font-size:14px;line-height:1.55}
.local-status-chip{display:inline-flex;align-items:center;gap:9px;flex:none;padding:8px 11px;border:1px solid #dce8d8;border-radius:99px;background:#f8fbf6;color:#5b785c;font-size:12px;font-weight:700}
.local-status-chip i{width:7px;height:7px;background:#91bb73;box-shadow:0 0 0 4px #eaf3e5}
.local-demo-banner{display:flex;gap:12px;align-items:flex-start;margin:0 0 17px;padding:13px 15px;border:1px solid #e8e2ca;border-radius:11px;background:#fffaf0;color:#786d4b;font-size:12px;line-height:1.5}
.local-demo-banner b{flex:none;color:#7a6831}
.panel-card{border-radius:15px}
.forum-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:15px;align-items:start}
.forum-main,.forum-compose{padding:20px}.forum-community-layout{margin-top:0}
.forum-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid #edf0ec}
.forum-toolbar h2,.forum-compose h2{margin:0;color:#2c3c31;font-size:18px}
.forum-toolbar>div>span{display:block;margin-top:4px;color:#89948b;font-size:12px}
.forum-filter-label{display:flex;align-items:center;gap:8px;color:#718076;font-size:12px}
.forum-filter-label select{max-width:180px;min-height:36px;border:1px solid #e2e8e1;border-radius:8px;background:#fff;padding:6px 9px;color:#435347;font-size:12px}
.forum-topic-list{display:grid;gap:9px;padding-top:13px}
.forum-topic-card{border:1px solid #e8ede7;border-radius:11px;background:#fff;overflow:hidden}
.forum-topic-card[open]{border-color:#d5e2d3;box-shadow:0 5px 16px rgba(30,55,34,.035)}
.forum-topic-card summary{display:flex;align-items:center;gap:12px;padding:14px;list-style:none;cursor:pointer}
.forum-topic-card summary::-webkit-details-marker{display:none}
.forum-topic-avatar{display:grid;width:38px;height:38px;flex:none;place-items:center;border-radius:12px;background:#e9f2e6;color:#4b754b;font-size:14px;font-weight:800}
.forum-topic-icon img{width:25px;height:25px;object-fit:contain}
.forum-topic-actions{display:flex;justify-content:flex-end;gap:7px;margin:0 0 10px}
.forum-topic-actions .button{min-height:31px;padding:5px 10px;font-size:12px}
.forum-topic-actions .forum-topic-delete{border-color:#eadcda;color:#9a5f58}
.forum-topic-main{min-width:0;flex:1}
.forum-topic-meta{display:flex;align-items:center;gap:7px;color:#879389;font-size:12px}
.forum-topic-meta b{padding:3px 7px;border-radius:99px;background:#f1f6ee;color:#557853;font-size:12px}
.forum-topic-main>strong{display:block;margin-top:4px;color:#304135;font-size:14px;line-height:1.4}
.forum-topic-main>small{display:block;margin-top:3px;color:#879189;font-size:12px}
.forum-topic-arrow{color:#829087;font-size:17px;transition:transform .15s}.forum-topic-card[open] .forum-topic-arrow{transform:rotate(180deg)}
.forum-topic-body{padding:0 15px 15px 65px;color:#617064;font-size:12px;line-height:1.65}
.forum-topic-body>p{margin:0 0 12px}
.forum-no-replies{padding:8px 0;color:#909a91;font-size:12px}
.forum-replies{display:grid;gap:10px;margin:12px 0}
.forum-reply{display:flex;gap:9px;padding:10px;border-radius:9px;background:#f8faf7}
.reply-avatar{width:27px;height:27px;border-radius:8px;font-size:12px}
.forum-reply strong{color:#506153;font-size:12px}.forum-reply strong small{margin-left:5px;color:#9aa39b;font-size:12px;font-weight:500}
.forum-reply p{margin:3px 0 0;color:#6e7a70;font-size:12px;line-height:1.5}
.forum-reply-form{display:flex;gap:8px;margin-top:12px}
.forum-reply-form input{flex:1;min-width:0;min-height:38px;border:1px solid #e3e9e2;border-radius:8px;padding:8px 10px;color:#3c4d40;font-size:12px}
.forum-reply-form button{border:0;border-radius:8px;background:#e8f2e6;padding:0 12px;color:#416d48;font-size:12px;font-weight:750}
.forum-empty-state{display:flex;flex-direction:column;align-items:center;padding:43px 18px;text-align:center}
.forum-empty-state>span{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:#eef5eb;color:#59805a;font-size:21px}
.forum-empty-state strong{margin-top:12px;color:#3c4c3f;font-size:14px}.forum-empty-state p{max-width:350px;margin:5px 0 0;color:#879289;font-size:12px;line-height:1.5}
.forum-compose{position:sticky;top:20px}
.forum-compose h2{margin-top:6px}.forum-compose>p{margin:6px 0 15px;color:#829086;font-size:12px;line-height:1.5}
.community-form{display:grid;gap:12px}
.community-form label,.partner-inquiry-form label,.template-name-grid label{display:grid;gap:6px;color:#617064;font-size:12px;font-weight:700}
.community-form input,.community-form select,.community-form textarea,.partner-inquiry-form input,.partner-inquiry-form select,.partner-inquiry-form textarea,.template-name-grid input{width:100%;min-height:40px;border:1px solid #e2e8e1;border-radius:8px;background:#fff;padding:9px 10px;color:#35463a;font-size:12px;font-weight:450;outline:0}
.community-form textarea,.partner-inquiry-form textarea{min-height:88px;resize:vertical}
.community-form input:focus,.community-form select:focus,.community-form textarea:focus,.partner-inquiry-form input:focus,.partner-inquiry-form select:focus,.partner-inquiry-form textarea:focus,.template-name-grid input:focus{border-color:#91b38e;box-shadow:0 0 0 3px rgba(74,128,84,.09)}
.community-form .button{width:100%}.form-local-hint{display:block;margin-top:10px;color:#919b92;font-size:12px;line-height:1.45}

.partners-head .button{flex:none}.partner-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.partner-demo-card{overflow:hidden;border:1px solid #e5ebe4;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(24,44,34,.035)}
.partner-card-art{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:176px;overflow:hidden;padding:16px 18px;color:#fff}
.partner-card-art:after{position:absolute;content:"";width:210px;height:210px;right:-25px;bottom:-120px;border:1px solid rgba(255,255,255,.3);border-radius:50%;box-shadow:0 0 0 18px rgba(255,255,255,.055),0 0 0 38px rgba(255,255,255,.035)}
.partner-art-one{background:linear-gradient(135deg,#415e4a,#789163)}.partner-art-two{background:linear-gradient(135deg,#476d75,#7f9a8d)}.partner-art-three{background:linear-gradient(135deg,#78634b,#a48b67)}
.partner-card-art>span{position:relative;z-index:1;align-self:flex-start;padding:5px 7px;border:1px solid rgba(255,255,255,.34);border-radius:5px;background:rgba(255,255,255,.1);font-size:12px;font-weight:800;letter-spacing:.8px}
.partner-card-art>b{position:relative;z-index:1;font-size:24px;line-height:1.05;letter-spacing:-.5px}
.partner-card-art>i{position:absolute;right:18px;bottom:14px;color:rgba(255,255,255,.55);font-size:22px;font-style:normal;font-weight:750}
.partner-card-copy{padding:16px 17px 18px}
.partner-category{color:#708876;font-size:12px;font-weight:800;letter-spacing:.8px}
.partner-card-copy h2{margin:6px 0;color:#334438;font-size:16px}.partner-card-copy p{margin:0 0 12px;color:#7e8b80;font-size:12px;line-height:1.5}
.partner-demo-label{display:inline-flex;padding:5px 8px;border-radius:99px;background:#f5f4ee;color:#8a805f;font-size:12px;font-weight:700}
.partner-contact-panel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:25px;margin-top:17px;padding:22px;border:1px solid #e3ebe1;background:linear-gradient(110deg,#f7faf4,#fff)}
.partner-contact-panel h2{margin:5px 0;color:#304035;font-size:20px}.partner-contact-panel>div>p{max-width:470px;margin:0;color:#7b887c;font-size:12px;line-height:1.6}
.partner-inquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:11px;align-items:start}
.partner-inquiry-form label:nth-child(3),.partner-inquiry-form button,.partner-inquiry-form small{grid-column:1/-1}
.partner-inquiry-form small{color:#929b92;font-size:12px;line-height:1.4}

.template-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:15px;align-items:start}
.template-builder{padding:21px}
.template-builder-head{display:flex;justify-content:space-between;gap:14px;margin-bottom:16px}
.template-builder-head h2{margin:5px 0;color:#2f4034;font-size:20px}.template-builder-head p{max-width:620px;margin:0;color:#7d8a7f;font-size:12px;line-height:1.5}
.template-step-number{display:grid;width:31px;height:31px;flex:none;place-items:center;border:1px solid #e1e9de;border-radius:9px;background:#f4f8f2;color:#648065;font-size:12px;font-weight:800}
.template-name-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.template-create-action{display:flex;align-items:center;gap:12px;margin-top:12px;padding:11px 12px;border:1px solid #e1e9de;border-radius:10px;background:#f7faf5}
.template-create-action .button{flex:none}.template-create-action small{color:#7d8a7f;font-size:12px;line-height:1.45}
.template-analysis-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.43fr);gap:9px;margin-top:15px}
.template-search{display:flex;align-items:center;gap:9px;min-width:0;border:1px solid #e2e9e1;border-radius:9px;background:#fff;padding:0 10px;color:#849187}
.template-search>span{font-size:18px}.template-search input{width:100%;min-width:0;height:40px;border:0;outline:0;color:#35473a;font-size:12px}
.template-division{display:flex;align-items:center;gap:8px;min-width:0;border:1px solid #e2e9e1;border-radius:9px;background:#fff;padding:0 9px;color:#859087;font-size:12px}
.template-division select{width:100%;min-width:0;height:38px;border:0;outline:0;background:transparent;color:#435347;font-size:12px}
.template-selection-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 7px;color:#839086;font-size:12px}
.template-selection-meta b{color:#3a6441;font-size:13px}
.template-analysis-list{max-height:420px;overflow:auto;border:1px solid #e8ede7;border-radius:10px;background:#fff;scrollbar-width:thin}
.template-analysis-row{display:flex;align-items:center;gap:11px;min-height:61px;padding:9px 12px;border-bottom:1px solid #eff2ee;cursor:pointer;transition:background .15s}
.template-analysis-row:last-of-type{border-bottom:0}.template-analysis-row:hover,.template-analysis-row.is-selected{background:#f7faf5}
.template-analysis-row input{position:absolute;width:1px;height:1px;opacity:0}
.template-check{position:relative;display:grid;width:19px;height:19px;flex:none;place-items:center;border:1.5px solid #cbd6ca;border-radius:5px;background:#fff}
.template-analysis-row.is-selected .template-check{border-color:#50805a;background:#50805a}
.template-analysis-row.is-selected .template-check:after{content:"✓";color:#fff;font-size:12px;font-weight:800}
.template-analysis-row input:focus-visible+.template-check{outline:3px solid rgba(74,128,84,.2)}
.template-analysis-copy{min-width:0}.template-analysis-copy strong{display:block;overflow:hidden;color:#38493c;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.template-analysis-copy small{display:block;margin-top:3px;overflow:hidden;color:#879288;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.template-result-more{padding:10px 12px;border-top:1px solid #eff2ee;background:#fbfcfa;color:#89948a;font-size:12px;line-height:1.45}
.template-empty-list{padding:25px 15px;color:#8a958b;font-size:12px;text-align:center}
.template-builder-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}
.template-builder-footer>small{max-width:380px;color:#89948b;font-size:12px;line-height:1.45}
.template-side-panel{display:grid;gap:11px}
.template-how-card{position:relative;overflow:hidden;padding:20px;border:1px solid #e1e9de;border-radius:15px;background:linear-gradient(145deg,#f3f8ef,#fff)}
.template-how-card>.template-step-number{position:absolute;top:17px;right:17px}
.template-how-card h2{max-width:250px;margin:7px 0;color:#334637;font-size:20px;line-height:1.25}
.template-how-card p{margin:0;color:#78867b;font-size:12px;line-height:1.6}
.template-mini-flow{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:18px;padding:11px 10px;border:1px solid #e2ebe0;border-radius:9px;background:rgba(255,255,255,.78);color:#526a54;font-size:12px;font-weight:700}
.template-mini-flow i{color:#92a28f;font-size:12px;font-style:normal}
.template-local-card{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #e9e6d8;border-radius:11px;background:#fffaf0;color:#796e50}
.template-local-card>b{display:grid;width:24px;height:24px;flex:none;place-items:center;border-radius:7px;background:#f3efd9;color:#887439;font-size:13px}
.template-local-card strong,.template-local-card small{display:block}.template-local-card strong{color:#6d633f;font-size:12px}.template-local-card small{margin-top:4px;color:#8b815f;font-size:12px;line-height:1.45}
.saved-templates-section{margin-top:31px}
.saved-templates-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:13px}
.saved-templates-heading h2{margin:5px 0;color:#2d3e32;font-size:21px}.saved-templates-heading p{margin:0;color:#859087;font-size:12px}
.saved-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.saved-template-card{display:flex;min-width:0;flex-direction:column;padding:17px;border:1px solid #e5ebe4;border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(24,44,34,.03)}
.saved-template-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.saved-template-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#edf5eb;color:#4a744a;font-size:18px}
.saved-template-date{color:#909a91;font-size:12px}
.saved-template-card h3{margin:13px 0 4px;color:#344538;font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.saved-template-card>p{min-height:20px;margin:0;color:#879187;font-size:12px;line-height:1.45}
.saved-template-count{display:flex;align-items:baseline;gap:6px;margin:12px 0 8px;padding-bottom:9px;border-bottom:1px solid #edf1ec}
.saved-template-count strong{color:#3b6d43;font-size:18px}.saved-template-count span{color:#869187;font-size:12px}
.saved-template-card ul{display:grid;gap:5px;min-height:58px;margin:0 0 15px;padding-left:16px;color:#627064;font-size:12px;line-height:1.4}
.saved-template-card li::marker{color:#8eaa83}.saved-template-card .template-more-item{color:#89958a;list-style:none;margin-left:-16px}
.saved-template-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}
.saved-template-actions .button{min-height:34px;font-size:12px}.template-delete-button{border:0;background:none;padding:6px;color:#9a756c;font-size:12px}
.saved-template-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;padding:31px 18px;border:1px dashed #dce5dc;border-radius:14px;background:#fbfcfa;text-align:center}
.saved-template-empty>span{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;background:#edf5eb;color:#59815a;font-size:19px}
.saved-template-empty strong{margin-top:9px;color:#445346;font-size:13px}.saved-template-empty p{max-width:430px;margin:4px 0 0;color:#88938a;font-size:12px;line-height:1.5}

@media(max-width:1180px){
  .home-hero{grid-template-columns:minmax(0,1.08fr) minmax(270px,.92fr)}
  .home-hero-copy{padding-left:34px;padding-right:15px}
  .home-hero h1{font-size:clamp(32px,4vw,45px)}
  .home-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .forum-layout{grid-template-columns:minmax(0,1fr) 310px}
}
@media(max-width:960px){
  .home-hero{min-height:360px}
  .home-hero-visual{min-height:320px;padding:15px}
  .home-sheet-card{width:min(305px,96%);padding:17px}
  .home-float-note{right:0;bottom:9%}
  .home-lower-grid{grid-template-columns:1fr}
  .forum-layout{grid-template-columns:1fr}
  .forum-compose{position:static;order:-1}
  .partner-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .template-layout{grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr)}
  .saved-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .app-shell{display:block}
  .sidebar{position:fixed;left:0;top:0;bottom:0;z-index:20;width:274px;height:100dvh;transform:translateX(-105%);transition:transform .22s ease;box-shadow:10px 0 35px rgba(20,37,28,.09)}
  .sidebar.open{transform:translateX(0)}
  .sidebar-close{display:grid}
  .mobile-scrim{position:fixed;inset:0;z-index:19;background:rgba(17,34,25,.27);opacity:0;visibility:hidden;transition:.2s}
  .mobile-scrim.open{opacity:1;visibility:visible}
  .main-area{min-height:100vh}
  .topbar{height:60px;padding:0 18px;justify-content:flex-start}
  .mobile-menu{display:grid;width:36px;height:36px;margin-right:8px;border:0;background:transparent}
  .breadcrumbs{flex:1}
  .topbar-actions{gap:7px}
  .storage-indicator,.topbar-actions .avatar-small{display:none}
  .topbar-actions .button{font-size:12px;padding:7px 9px}
  .project-picker label>span{font-size:12px}
  .project-picker select{max-width:130px;font-size:12px}
  .page-content{padding:22px 18px 36px}
  .app-footer{padding-bottom:82px}
  .mobile-bottom-nav{position:fixed;z-index:15;left:0;right:0;bottom:0;height:58px;display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #e8ece7;background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
  .mobile-nav-link{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:#8a968d;font-size:12px}
  .mobile-nav-link span{font-size:17px;line-height:1}
  .mobile-nav-link.active{color:#2f6344;font-weight:750}
  .mobile-nav-link b{position:absolute;top:5px;left:calc(50% + 11px);display:grid;min-width:14px;height:14px;place-items:center;border-radius:8px;background:#d5edb2;color:#3b5c3c;font-size:12px}
}
@media(max-width:760px){
  body{font-size:14px}
  .topbar{height:58px;padding:0 13px}
  .mobile-menu{width:36px;height:36px}
  .breadcrumbs{font-size:12px}
  .topbar-actions{gap:6px}
  .project-picker label>span{font-size:12px}
  .project-picker select{max-width:130px;font-size:12px}
  .project-picker .button{min-height:31px;font-size:12px}
  .page-content{padding:19px 14px 35px}
  .page-intro h1,.folder-intro h1,.workspace-title-row h1{font-size:25px}
  .page-lede{font-size:13px}
  .eyebrow,.side-overline{font-size:12px}
  .button{min-height:40px;padding-left:12px;padding-right:12px;font-size:12px}
  .button-small{min-height:34px;font-size:12px}
  .nav-link{min-height:44px;font-size:14px}
  .home-hero{grid-template-columns:1fr;min-height:0;border-radius:19px}
  .home-hero-copy{position:relative;z-index:1;padding:25px 21px 21px}
  .home-pill{font-size:12px;letter-spacing:.7px}
  .home-hero h1{max-width:540px;margin:14px 0 11px;font-size:clamp(31px,8vw,40px);letter-spacing:-1.2px}
  .home-hero-copy>p{max-width:540px;font-size:13px}
  .home-hero-actions{gap:8px;margin-top:17px}
  .home-hero-actions .button{min-height:42px;padding:0 12px;font-size:12px}
  .home-trust-line{max-width:390px;margin-top:15px;font-size:12px}
  .home-hero-visual{position:absolute;inset:auto 0 0 43%;height:100%;min-height:100%;opacity:.23;pointer-events:none}
  .home-sheet-card{display:none}
  .home-visual-grid{inset:0 0 0 0}
  .home-float-note{display:none}
  .home-float-icon{width:26px;height:26px}
  .home-float-note small{font-size:12px}.home-float-note strong{font-size:12px}
  .home-section-heading{margin:25px 0 12px}.home-section-heading h2,.home-workflow-card h2{font-size:19px}.home-section-heading p{font-size:12px}
  .home-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .home-feature-card{min-height:198px;padding:13px;border-radius:12px}
  .feature-number{top:13px;right:12px;font-size:12px}
  .feature-icon{width:35px;height:35px;font-size:17px}
  .home-feature-card>strong{margin-top:11px;font-size:13px}
  .home-feature-card>small{font-size:12px;line-height:1.45}
  .feature-arrow{font-size:12px}
  .home-lower-grid{gap:9px;margin-top:10px}
  .home-workflow-card,.home-local-card{padding:15px;border-radius:12px}
  .workflow-steps{grid-template-columns:1fr;gap:12px}
  .workflow-steps strong{font-size:12px}.workflow-steps small{font-size:12px}
  .home-partner-strip{align-items:flex-start;flex-direction:column;gap:11px;margin-top:10px;padding:15px;border-radius:12px}
  .home-partner-strip h2{font-size:16px}.home-partner-strip p{font-size:12px}
  .community-page-head{align-items:flex-start;gap:12px;margin-bottom:13px}
  .community-page-head h1{font-size:25px;letter-spacing:-.5px}
  .community-page-head p{font-size:12px}
  .local-status-chip{padding:6px 8px;font-size:12px}
  .local-demo-banner{gap:8px;padding:10px 11px;font-size:12px}
  .local-demo-banner b{font-size:12px}
  .forum-layout{gap:10px}
  .forum-compose,.forum-main{padding:14px;border-radius:12px}
  .forum-compose h2,.forum-toolbar h2{font-size:16px}
  .forum-compose>p{font-size:12px}
  .community-form label{font-size:12px}
  .community-form input,.community-form select,.community-form textarea{font-size:12px}
  .forum-toolbar{align-items:flex-start;flex-direction:column}
  .forum-filter-label{width:100%;justify-content:space-between}
  .forum-filter-label select{max-width:none;flex:1}
  .forum-topic-card summary{gap:9px;padding:11px}
  .forum-topic-avatar{width:32px;height:32px;border-radius:10px;font-size:12px}
  .forum-topic-main>strong{font-size:13px}
  .forum-topic-body{padding:0 11px 12px 52px;font-size:12px}
  .forum-reply-form input{font-size:12px}
  .partners-head{flex-direction:column;align-items:stretch}
  .partners-head .button{align-self:flex-start}
  .partner-directory-grid{grid-template-columns:1fr;gap:10px}
  .partner-card-art{min-height:145px}
  .partner-card-art>b{font-size:22px}
  .partner-contact-panel{grid-template-columns:1fr;gap:15px;padding:16px;border-radius:12px}
  .partner-contact-panel h2{font-size:18px}.partner-contact-panel>div>p{font-size:12px}
  .partner-inquiry-form{grid-template-columns:1fr;gap:10px}
  .partner-inquiry-form label:nth-child(3),.partner-inquiry-form button,.partner-inquiry-form small{grid-column:auto}
  .template-layout{grid-template-columns:minmax(0,1fr);gap:10px}
  .template-builder,.template-side-panel{min-width:0}
  .template-builder{padding:14px;border-radius:12px}
  .template-builder-head h2{font-size:17px}.template-builder-head p{font-size:12px}
  .template-name-grid{grid-template-columns:1fr;gap:9px}
  .template-create-action{align-items:flex-start;flex-direction:column;gap:7px;padding:10px}
  .template-analysis-toolbar{grid-template-columns:1fr;gap:8px;margin-top:11px}
  .template-analysis-list{max-height:330px}
  .template-analysis-row{min-height:58px;padding:8px 9px}
  .template-analysis-copy strong{font-size:12px}
  .template-analysis-copy small{font-size:12px}
  .template-builder-footer{align-items:stretch;flex-direction:column}
  .template-builder-footer .button{align-self:flex-start}
  .template-side-panel{grid-template-columns:1fr 1fr}
  .template-how-card{padding:14px}.template-how-card h2{font-size:16px}.template-how-card p{font-size:12px}
  .template-mini-flow{flex-wrap:wrap;justify-content:flex-start;font-size:12px}
  .template-local-card{padding:10px}.template-local-card small{font-size:12px}
  .saved-templates-section{margin-top:24px}
  .saved-templates-heading h2{font-size:19px}
  .saved-template-grid{grid-template-columns:1fr;gap:9px}
  .saved-template-card{padding:14px}
  .saved-template-card h3{font-size:15px}
  .app-footer{font-size:12px}
  .project-tab{font-size:12px}
  .workspace-summary-strip{font-size:12px}
  .workspace-summary-strip b{font-size:12px}
  .workspace-card-heading h2{font-size:17px}
  .workspace-card-heading p{font-size:12px}
  .workspace-field,.workspace-field input,.workspace-field select,.workspace-field textarea{font-size:12px}
  .folder-card-title h2{font-size:15px}
  .folder-card-title p{font-size:12px}
  .folder-metric strong{font-size:12px}
}
@media(max-width:420px){
  .page-content{padding-left:11px;padding-right:11px}
  .topbar{padding:0 9px}
  .mobile-menu{margin-right:5px}
  .breadcrumbs{gap:5px;font-size:12px}
  .project-picker label{min-width:0}
  .project-picker select{max-width:100px;font-size:12px}
  .project-picker .button{padding:5px 7px;font-size:12px}
  .home-hero-copy{padding:22px 16px 19px}
  .home-hero h1{font-size:30px}
  .home-hero-actions .button{font-size:12px}
  .home-float-note{right:9px;bottom:9px}
  .home-feature-card{min-height:207px;padding:11px}
  .home-feature-card>strong{font-size:12px}
  .home-feature-card>small{font-size:12px}
  .home-partner-strip .button{width:100%;justify-content:center}
  .community-page-head h1{font-size:23px}
  .local-status-chip{font-size:12px}
  .forum-main{padding:11px}
  .forum-topic-body{padding-left:11px}
  .forum-topic-meta{font-size:12px}
  .forum-reply-form{gap:5px}
  .forum-reply-form button{padding:0 8px}
  .template-side-panel{grid-template-columns:1fr}
  .saved-template-actions .button{font-size:12px}
  .project-picker .button{font-size:0}
  .project-picker .button:after{content:"＋";font-size:13px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}


/* Cloud-backed community status, published partner cards, and admin tools. */
.community-notice{display:flex;align-items:flex-start;margin:0 0 16px;padding:12px 14px;border:1px solid #dce9d9;border-radius:10px;background:#f6faf4;color:#536b55;font-size:12px;line-height:1.55}
.community-notice.is-error{border-color:#eed8d3;background:#fff8f6;color:#9b5e52}
.community-form-status{display:block;min-height:18px;margin-top:8px;color:#5d775e;font-size:12px;line-height:1.45}
.community-form-status.is-error{color:#a35d51}
.community-login-button{margin-top:10px}
.forum-reply-login{margin-top:12px;padding:9px 11px;border-radius:8px;background:#f7faf5;color:#718071;font-size:12px}
.forum-reply-login button{margin-left:5px;border:0;background:transparent;color:#3f7549;font-size:12px;font-weight:750;text-decoration:underline}
.partner-directory-grid{align-items:stretch}
.partner-directory-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;padding:42px 18px;border:1px dashed #dce5dc;border-radius:14px;background:#fbfcfa;text-align:center}
.partner-directory-empty>span{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:#edf5eb;color:#59815a;font-size:21px}
.partner-directory-empty strong{margin-top:11px;color:#445346;font-size:14px}
.partner-directory-empty p{max-width:420px;margin:5px 0 0;color:#879289;font-size:12px;line-height:1.5}
.partner-listing-link{display:inline-flex;margin-top:10px;color:#3b7549;font-size:12px;font-weight:750;text-decoration:none}
.partner-listing-link:hover{text-decoration:underline}
.partner-inquiry-form{grid-column:2}
.partner-contact-panel>.community-form-status,.partner-contact-panel>.community-login-button{grid-column:2}
.partner-my-inquiries{margin-top:27px}
.partner-inquiry-list{display:grid;gap:9px;margin-top:11px}
.partner-inquiry-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px;border:1px solid #e7ece5;border-radius:10px;background:#fff}
.partner-inquiry-row>div:first-child{min-width:0;flex:1}
.partner-inquiry-row strong{display:block;color:#344639;font-size:13px}
.partner-inquiry-row span{display:block;margin-top:3px;color:#849086;font-size:12px}
.partner-inquiry-row p{margin:6px 0 0;color:#667368;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.partner-inquiry-row small{display:block;margin-top:5px;color:#7c887e;font-size:12px}
.partner-inquiry-status{flex:none;padding:5px 8px;border-radius:99px;background:#edf5eb;color:#557650;font-size:12px}
.partner-inquiry-status.status-declined{background:#fff0ed;color:#9b5e52}
.partner-admin-panel{margin-top:22px;padding:20px}
.partner-admin-heading{display:flex;justify-content:space-between;gap:14px;margin-bottom:14px}
.partner-admin-heading h2{margin:5px 0;color:#304035;font-size:20px}
.partner-admin-heading p{margin:0;color:#7b887d;font-size:12px;line-height:1.5}
.partner-listing-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:15px;border:1px solid #e7ece5;border-radius:11px;background:#fafcf9}
.partner-listing-form label{display:grid;gap:6px;color:#617064;font-size:12px;font-weight:700}
.partner-listing-form input,.partner-listing-form select,.partner-listing-form textarea{width:100%;min-height:40px;border:1px solid #e2e8e1;border-radius:8px;background:#fff;padding:9px 10px;color:#35463a;font:inherit;font-size:12px;font-weight:450;outline:0}
.partner-listing-form textarea{resize:vertical}
.partner-listing-summary,.partner-listing-actions{grid-column:1/-1}
.partner-listing-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.partner-listing-actions .community-form-status{margin:0}
.partner-admin-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:18px}
.partner-admin-columns h3{margin:0;color:#3b4d3f;font-size:14px}
.partner-admin-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;flex:none}
.partner-admin-row-actions .button{min-height:30px;font-size:12px}
.partner-admin-empty{padding:15px;border:1px dashed #e2e9e0;border-radius:9px;color:#849086;font-size:12px;line-height:1.5}
.saved-template-empty .button{margin-top:12px}

/* Readability pass for dense project tables and workspace controls; tabs remain horizontally scrollable. */
.local-demo-note,.workspace-demo-note{font-size:12px}
.local-demo-note strong{font-size:12px}
.folder-card-title p,.folder-status,.folder-card-footer small,.folder-open-button{font-size:12px}
.folder-metric span{font-size:12px}
.folder-metric strong,.folder-card-title h2{font-size:13px}
.folder-empty p,.folder-empty h2{font-size:12px}
.back-to-folders,.workspace-demo-note,.workspace-summary-strip{font-size:12px}
.workspace-summary-strip b{font-size:12px}
.project-tab{font-size:12px}
.workspace-card-heading p,.workspace-field,.workspace-field input,.workspace-field select,.workspace-field textarea{font-size:12px}
.workspace-meta-line,.workspace-meta-line code,.workspace-meta-line b{font-size:12px}
.draft-table-panel .draft-table-head h2{font-size:15px}
.draft-table-panel .draft-table-head p{font-size:12px}
.recap-table th{font-size:12px}
.recap-table td{font-size:12px}
.recap-muted{font-size:12px}
.curve-table th,.curve-legacy-details summary{font-size:12px}
.curve-table td,.curve-work-cell strong{font-size:12px}
.curve-cell-input input{font-size:12px}
.schedule-entry .workspace-field,.schedule-entry input,.workspace-footnote,.workspace-record-action{font-size:12px}
.workspace-record-main strong,.workspace-record-detail,.k3-detail-grid p{font-size:12px}
.workspace-record-main span,.k3-detail-grid span,.k3-status{font-size:12px}
.mobile-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:960px){.partner-admin-columns{grid-template-columns:1fr}.partner-admin-row-actions{justify-content:flex-start}}
@media(max-width:760px){
  .community-notice{font-size:12px;padding:10px 11px}
  .partner-directory-grid{grid-template-columns:1fr}
  .partner-contact-panel{grid-template-columns:1fr;gap:15px;padding:16px}
  .partner-inquiry-form,.partner-contact-panel>.community-form-status,.partner-contact-panel>.community-login-button{grid-column:1}
  .partner-inquiry-form{grid-template-columns:1fr}
  .partner-inquiry-form label:nth-child(3),.partner-inquiry-form button,.partner-inquiry-form small{grid-column:1}
  .partner-inquiry-row{flex-direction:column;gap:8px;padding:11px}
  .partner-admin-panel{padding:14px}
  .partner-listing-form{grid-template-columns:1fr;padding:12px}
  .partner-listing-summary,.partner-listing-actions{grid-column:1}
  .partner-admin-row-actions{width:100%}
  .workspace-field,.workspace-field input,.workspace-field select,.workspace-field textarea{font-size:12px}
  .workspace-meta-line,.workspace-meta-line code,.workspace-meta-line b{font-size:12px}
  .project-tab{font-size:12px;padding:11px 9px 9px}
  .recap-table th,.recap-table td{font-size:12px}
}

/* Final readability floor for tiny labels, metadata, and dense progress matrices. */
.community-eyebrow,.home-pill,.home-trust-line,.feature-number,.feature-arrow,.partner-card-art>span,.partner-category,.partner-demo-label,.template-mini-flow,.saved-template-date,.template-delete-button,.template-analysis-copy small,.template-result-more,.template-builder-footer>small,.mobile-nav-link{font-size:12px}
.home-float-note small{font-size:12px}
.home-float-note strong{font-size:12px}
.home-trust-line{line-height:1.5}
.curve-matrix-heading span,.curve-matrix-heading>b,.curve-table th small,.curve-work-cell>span,.curve-work-cell small,.curve-weight-cell,.curve-cell-input span,.curve-legend,.curve-legacy-details summary,.curve-legacy-details>p,.curve-empty-state{font-size:12px}
.global-admin-login .workspace-field,.global-admin-login .workspace-field input,.curve-duration-field,.curve-duration-input b,.curve-mode-switch button,.curve-actions .button,.curve-table th,.curve-work-cell strong,.curve-cell-input input,.curve-matrix-empty,.workspace-footnote,.record-inline-input,.record-inline-select,.record-field-label,.workspace-record-main span,.workspace-record-action,.k3-detail-grid span,.k3-status{font-size:12px}
@media(max-width:760px){
  .mobile-nav-link{font-size:12px}
  .home-trust-line,.feature-number,.feature-arrow{font-size:12px}
  .curve-table th,.curve-work-cell small,.curve-table th small,.curve-weight-cell,.curve-cell-input input,.curve-cell-input span,.curve-legacy-details summary,.curve-legacy-details>p,.workspace-footnote,.workspace-record-action,.k3-status{font-size:12px}
  .global-admin-login .workspace-field,.global-admin-login .workspace-field input,.record-inline-input,.record-inline-select,.record-field-label{font-size:12px}
}
@media(max-width:900px){.forum-community-layout{grid-template-columns:minmax(0,1fr)}}


/* Discord-like forum channels and selected-topic conversation. */
.forum-community-layout{grid-template-columns:minmax(195px,.76fr) minmax(0,2fr) minmax(230px,.88fr);align-items:stretch}
.forum-channel-panel,.forum-thread-panel{min-width:0;padding:16px}
.forum-topic-list{display:grid;align-content:start;gap:5px;max-height:min(68vh,760px);overflow:auto;padding:12px 3px 2px 0;scrollbar-width:thin}
.forum-channel-button{display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:55px;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:#647268;text-align:left;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.forum-channel-button:hover{border-color:#e7eee4;background:#f7faf5}
.forum-channel-button.is-active{border-color:#dce8d7;background:#edf5ea;color:#355d3d;box-shadow:0 4px 12px rgba(34,67,39,.045)}
.forum-channel-button:focus-visible{outline:3px solid rgba(74,128,84,.22);outline-offset:2px}
.forum-channel-icon{display:grid;width:35px;height:35px;flex:none;place-items:center;overflow:hidden;border:1px solid rgba(54,82,57,.07);border-radius:11px;background:#eaf2e6}
.forum-channel-icon img{width:25px;height:25px;object-fit:contain}
.forum-channel-copy{display:block;min-width:0;flex:1}
.forum-channel-name{display:flex;align-items:center;gap:5px;min-width:0}
.forum-channel-name i{flex:none;color:#8b9a8c;font-size:15px;font-style:normal;font-weight:750}
.forum-channel-name strong{overflow:hidden;color:#394a3d;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
.forum-channel-button.is-active .forum-channel-name i,.forum-channel-button.is-active .forum-channel-name strong{color:#355d3d}
.forum-channel-copy small{display:block;overflow:hidden;margin-top:3px;color:#89958b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.forum-channel-empty{padding:17px 8px;border:1px dashed #dce5da;border-radius:10px;background:#fbfcfa}
.forum-channel-empty strong{margin:0;color:#748176;font-size:12px}
.forum-thread-panel{min-height:330px}
.forum-thread-header{display:flex;align-items:flex-start;gap:12px;min-width:0;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #edf0ec}
.forum-thread-icon{display:grid;width:45px;height:45px;flex:none;place-items:center;overflow:hidden;border:1px solid rgba(54,82,57,.08);border-radius:13px;background:#eaf2e6}
.forum-thread-icon img{width:31px;height:31px;object-fit:contain}
.forum-thread-heading{min-width:0;flex:1}
.forum-thread-heading h2{margin:5px 0 3px;color:#304135;font-size:19px;line-height:1.35;overflow-wrap:anywhere}
.forum-thread-heading>p{margin:0;color:#879189;font-size:12px;line-height:1.45}
.forum-thread-header .forum-topic-actions{flex:none;align-self:flex-start;margin:0 0 0 auto}
.forum-topic-body{padding:0;color:#617064;font-size:13px;line-height:1.7}
.forum-topic-body>p{margin:0 0 14px;overflow-wrap:anywhere}
.forum-topic-body .forum-no-replies{padding:12px 0;border-top:1px solid #eff2ee;color:#89958b}
.forum-replies{display:grid;gap:9px;margin:15px 0 10px;padding-top:12px;border-top:1px solid #eff2ee}
.forum-reply{align-items:flex-start;min-width:0}
.forum-reply>div{min-width:0}
.forum-reply p{overflow-wrap:anywhere}
.forum-donor-board{min-width:0;margin:0;padding:18px}
.forum-donor-board .donor-board-heading{display:block}
.forum-donor-board .donor-board-heading h2{font-size:18px}
.forum-donor-board .donor-board-heading p{margin-bottom:12px}
.forum-donor-board .donor-board-actions{width:100%;margin-top:10px}
.forum-donor-board .donor-board-actions .button{width:100%;justify-content:center}
.forum-donor-board .donor-list{grid-template-columns:1fr;gap:8px;margin-top:13px}
.forum-donor-board .donor-list-item{gap:7px;padding:9px}
.forum-donor-board .donor-empty{padding:16px 10px}
@media(max-width:1100px){
  .forum-community-layout{grid-template-columns:minmax(185px,.72fr) minmax(0,1.8fr)}
  .forum-donor-board{grid-column:1/-1}
  .forum-donor-board .donor-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .forum-community-layout{grid-template-columns:minmax(0,1fr);gap:10px}
  .forum-channel-panel,.forum-thread-panel{padding:14px;border-radius:12px}
  .forum-topic-list{max-height:300px;padding-top:10px}
  .forum-channel-button{min-height:51px;padding:7px 8px}
  .forum-thread-panel{min-height:0}
  .forum-thread-header{gap:9px}
  .forum-thread-icon{width:38px;height:38px;border-radius:11px}
  .forum-thread-icon img{width:27px;height:27px}
  .forum-thread-heading h2{font-size:16px}
  .forum-thread-header .forum-topic-actions{flex-direction:column;gap:5px}
  .forum-thread-header .forum-topic-actions .button{min-height:31px;padding:5px 8px}
  .forum-topic-body{font-size:12px}
  .forum-donor-board{grid-column:auto;padding:15px;border-radius:13px}
  .forum-donor-board .donor-list{grid-template-columns:1fr}
}
@media(max-width:420px){
  .forum-thread-header{flex-wrap:wrap}
  .forum-thread-heading{flex-basis:calc(100% - 50px)}
  .forum-thread-header .forum-topic-actions{width:100%;flex-direction:row;justify-content:flex-end;margin-left:auto}
}

.forum-channel-panel .forum-toolbar{align-items:flex-start;flex-direction:column;gap:10px}
.forum-channel-panel .forum-filter-label{width:100%}
.forum-channel-panel .forum-filter-label select{max-width:none;min-width:0;flex:1}
@media(max-width:760px){
  #view-forum .community-page-head{align-items:stretch;flex-direction:column;gap:12px}
  #view-forum .forum-page-actions{justify-content:space-between;flex-wrap:wrap;width:100%}
  #view-forum .forum-topic-launch{margin-left:auto}
}


/* Discord-inspired public Documentation channels. */
.documentation-view{max-width:1360px;margin:0 auto}
.documentation-page-intro{margin-bottom:15px}
.documentation-notice{display:flex;align-items:flex-start;gap:10px;margin:0 0 16px;padding:12px 15px;border:1px solid #e8e2ca;border-radius:11px;background:#fffaf0;color:#786d4b;font-size:13px;line-height:1.55}
.documentation-notice strong{flex:none;color:#78652b}
.documentation-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:14px;align-items:start}
.documentation-sidebar{position:sticky;top:82px;max-height:calc(100vh - 96px);overflow:auto;padding:13px;border:1px solid #e4eae2;background:#f8faf7}
.documentation-server-title{display:flex;align-items:center;gap:10px;padding:5px 5px 14px;border-bottom:1px solid #e5eae3}
.documentation-server-title>span:last-child,.documentation-server-title strong,.documentation-server-title small{display:block}
.documentation-server-title strong{color:#304135;font-size:14px}
.documentation-server-title small{margin-top:2px;color:#879389;font-size:12px}
.documentation-server-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:#e6f0e3;color:#3d7049;font-size:15px;font-weight:800}
.documentation-channels{display:grid;gap:13px;padding-top:13px}
.documentation-channel-group{display:grid;gap:3px}
.documentation-group-title{padding:0 8px 4px;color:#8b968c;font-size:12px;font-weight:800;letter-spacing:.7px}
.documentation-channel-link{display:flex;align-items:center;gap:7px;min-height:35px;padding:6px 9px;border-radius:7px;color:#68766c;text-decoration:none;font-size:13px}
.documentation-channel-link>span{color:#9aa49b;font-size:16px;font-weight:800}
.documentation-channel-link:hover,.documentation-channel-link:focus-visible{background:#eaf1e8;color:#345f40;outline:none}
.documentation-feed{min-width:0;overflow:hidden;border:1px solid #e3e9e2;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(24,44,34,.035)}
.documentation-feed-header{display:flex;align-items:center;gap:10px;padding:15px 19px;border-bottom:1px solid #e5eae4;background:#fff}
.documentation-feed-header>span{color:#7e8b81;font-size:22px;font-weight:700}
.documentation-feed-header strong,.documentation-feed-header small{display:block}
.documentation-feed-header strong{color:#2d3f33;font-size:15px}
.documentation-feed-header small{margin-top:2px;color:#89958b;font-size:12px}
.documentation-messages{padding:3px 20px 12px}
.documentation-message{scroll-margin-top:24px;padding:21px 2px;border-bottom:1px solid #edf0ec;color:#5e6d62}
.documentation-message:last-child{border-bottom:0}
.documentation-message-meta{display:flex;align-items:center;gap:7px;margin-bottom:10px;color:#879389;font-size:12px}
.documentation-message-meta strong{color:#4d6052;font-size:12px}
.documentation-message-avatar{display:grid;width:25px;height:25px;place-items:center;margin-right:2px;border-radius:8px;background:#e8f1e5;color:#48724b;font-size:12px;font-weight:800}
.documentation-message h2{display:flex;align-items:center;gap:5px;margin:0 0 11px;color:#2c3d31;font-size:19px;line-height:1.35;letter-spacing:-.3px}
.documentation-message h2>span{color:#879489;font-size:20px}
.documentation-message h3{margin:14px 0 7px;color:#35483a;font-size:15px}
.documentation-message p,.documentation-message li{color:#627066;font-size:13px;line-height:1.7}
.documentation-message p{margin:8px 0}
.documentation-message ul{display:grid;gap:6px;margin:9px 0 12px;padding-left:21px}
.documentation-message a{color:#356948;font-weight:650;text-decoration:underline;text-underline-offset:2px}
.documentation-status{display:grid;gap:5px;margin:10px 0 12px;padding:12px 13px;border:1px solid #ecdcae;border-radius:9px;background:#fff9e8;color:#776a46;font-size:13px;line-height:1.6}
.documentation-status strong{color:#765f1f}
.documentation-data-tags{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 12px}
.documentation-data-tags span{padding:5px 9px;border:1px solid #e1eadf;border-radius:99px;background:#f6faf4;color:#537355;font-size:12px;font-weight:700}
.documentation-limit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0}
.documentation-limit-grid>div{display:grid;gap:3px;padding:10px 11px;border:1px solid #e7ece6;border-radius:9px;background:#fafcf9}
.documentation-limit-grid strong{color:#425546;font-size:12px}
.documentation-limit-grid span{color:#68766c;font-size:12px;line-height:1.5}
.documentation-action-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.documentation-action-links .button{min-height:38px}
.documentation-message .persistence-chip{margin-top:12px}
@media(max-width:900px){
  .documentation-layout{grid-template-columns:1fr}
  .documentation-sidebar{position:static;max-height:none}
  .documentation-channels{display:flex;align-items:flex-start;gap:18px;overflow-x:auto;padding-bottom:3px}
  .documentation-channel-group{min-width:max-content}
}
@media(max-width:820px){
  .topbar-actions .avatar-small{display:grid;width:31px;height:31px;flex:0 0 auto}
}
@media(max-width:760px){
  .documentation-notice{display:grid;gap:4px;padding:11px 12px;font-size:12px}
  .documentation-layout{gap:10px}
  .documentation-sidebar{padding:10px}
  .documentation-server-title{display:none}
  .documentation-channels{gap:12px;padding-top:0}
  .documentation-group-title{display:none}
  .documentation-channel-link{min-height:36px;padding:7px 9px;border:1px solid #e8ede7;background:#fff;font-size:12px}
  .documentation-feed-header{padding:12px 14px}
  .documentation-messages{padding:0 13px 7px}
  .documentation-message{padding:18px 1px}
  .documentation-message h2{font-size:18px}
  .documentation-message p,.documentation-message li{font-size:13px}
  .documentation-limit-grid{grid-template-columns:1fr}
}


/* These requested account/information views opt in to navigation visibility; all other hidden views retain existing behavior. */
.view#view-guide.active,.view#view-profile.active{display:block!important}


/* Compact X-Rab sidebar inspired by Discord's server/channel navigation. */
.sidebar{padding-top:18px;padding-left:13px;padding-right:13px}
.brand-row{gap:9px;padding:0 5px 15px}
.brand-mark{width:34px;height:34px;border-radius:10px;box-shadow:none}
.brand-name{color:#27333a;font-size:18px;letter-spacing:-.35px;font-weight:760}
.brand-caption{display:none}
.workspace-switcher,.sidebar-bottom .source-card{display:none!important}
.nav-group-label{padding:10px 9px 5px;color:#8a9299;font-size:12px;letter-spacing:.7px;font-weight:700}
.nav-group-spaced{margin-top:8px}
.primary-nav{gap:2px}
.nav-link{min-height:36px;padding:7px 9px;gap:7px;border-radius:6px;color:#59636a;font-size:13px;font-weight:500}
.nav-link:hover{background:#f0f2f3;color:#303a40}
.nav-link.active{background:#e9edef;color:#27363d;font-weight:650}
.nav-icon{width:17px;height:19px;color:#9099a0}
.account-sidebar-toggle{width:28px;height:28px;border-color:transparent;border-radius:7px;background:transparent;color:#879198;font-size:20px}
.account-sidebar-toggle:hover{border-color:#e5e8ea;background:#f1f2f3;color:#48545b}
@media(max-width:760px){
  .nav-link{min-height:42px}
}


/* Documentation channel emoji and the compact Supabase storage summary. */
.documentation-channel-link>.documentation-channel-hash{color:#9aa49b;font-size:16px;font-weight:800;line-height:1}
.documentation-channel-link>.documentation-channel-emoji{display:block;width:18px;height:18px;flex:0 0 18px;object-fit:contain}
.documentation-channel-link>.documentation-channel-title{color:inherit;font-size:inherit;font-weight:inherit;line-height:1.35}
.supabase-summary-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 12px;padding:12px 14px;border:1px solid #e5ebe3;border-radius:11px;background:#f8faf7}
.supabase-summary-head>div{display:grid;flex:none;gap:2px}
.supabase-plan-kicker{color:#879489;font-size:12px;font-weight:800;letter-spacing:.6px}
.supabase-summary-head>div strong{color:#304538;font-size:16px}
.supabase-summary-head>p{flex:1 1 220px;margin:0;color:#657268;font-size:12px;line-height:1.5}
.supabase-summary-head>a{font-size:12px;white-space:nowrap}
.supabase-quota-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
.supabase-quota-card{position:relative;display:grid;gap:5px;min-width:0;padding:11px 12px;border:1px solid #e7ece6;border-radius:10px;background:#fbfcfa}
.supabase-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#657268;font-size:12px;font-weight:750}
.supabase-quota-card>strong{color:#304538;font-size:18px;line-height:1.2;overflow-wrap:anywhere}
.supabase-quota-card>small{color:#7a877d;font-size:12px;line-height:1.4}
.supabase-info-wrap{position:relative;display:inline-flex;flex:none}
.supabase-info{display:grid;width:24px;height:24px;place-items:center;padding:0;border:1px solid #dce6da;border-radius:50%;background:#fff;color:#456b4d;font-size:12px;font-weight:800;line-height:1;cursor:pointer}
.supabase-info:hover,.supabase-info:focus-visible{border-color:#8eaa8b;background:#edf5eb;color:#2f6040}
.supabase-info:focus-visible{outline:2px solid #628a68;outline-offset:2px}
.supabase-info-wrap:hover,.supabase-info-wrap:focus-within,.supabase-info-wrap.is-open{z-index:30}
.supabase-tooltip{position:absolute;z-index:31;top:calc(100% + 6px);right:0;width:min(270px,calc(100vw - 42px));padding:10px 12px;border:1px solid #3b5548;border-radius:9px;background:#20352c;color:#fff;font-size:12px;line-height:1.5;box-shadow:0 8px 24px rgba(20,35,28,.24);opacity:0;visibility:hidden;transform:translateY(-3px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease;pointer-events:none}
.supabase-info-wrap:hover .supabase-tooltip,.supabase-info-wrap:focus-within .supabase-tooltip,.supabase-info-wrap.is-open .supabase-tooltip{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.supabase-other-limits{position:relative;margin:12px 0;padding:11px 12px;border:1px solid #e7ece6;border-radius:10px;background:#fff}
.supabase-other-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#405345;font-size:12px}
.supabase-limit-pills{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 5px}
.supabase-limit-pills>span{padding:5px 8px;border:1px solid #e8eee6;border-radius:99px;background:#f8faf7;color:#617064;font-size:12px;line-height:1.4}
.supabase-other-limits>small{color:#77847a;font-size:12px;line-height:1.45}
.supabase-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 10px}
.supabase-data-card{position:relative;display:grid;align-content:start;gap:8px;min-width:0;padding:10px;border:1px solid #e7ece6;border-radius:10px;background:#fbfcfa}
.supabase-data-card .supabase-card-head strong{color:#405345;font-size:12px}
.supabase-data-card>span{color:#66746a;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.supabase-footnote{margin:10px 0!important;color:#748076!important;font-size:12px!important;line-height:1.55!important}

/* Compact, horizontal topbar controls; the account email remains in Profile settings only. */
.topbar-actions{gap:12px}
.project-picker{min-width:0}
.project-picker label{display:flex!important;flex-direction:row!important;align-items:center;gap:9px;min-width:0!important}
.project-picker label>span{font-size:12px!important;letter-spacing:.5px;white-space:nowrap}
.project-picker select{min-width:145px;max-width:190px}
.storage-indicator{display:flex;align-items:center;gap:7px;max-width:none;white-space:nowrap;font-size:12px}
.storage-indicator[data-state="live"] .storage-dot{background:#4fa96c;box-shadow:0 0 0 3px rgba(79,169,108,.13)}
.storage-indicator[data-state="syncing"] .storage-dot{background:#c89c42;box-shadow:0 0 0 3px rgba(200,156,66,.14)}
.storage-indicator[data-state="warning"] .storage-dot{background:#d3a347;box-shadow:0 0 0 3px rgba(211,163,71,.14)}
.storage-indicator[data-state="error"] .storage-dot{background:#c75d55;box-shadow:0 0 0 3px rgba(199,93,85,.14)}
.storage-indicator[data-state="local"] .storage-dot{background:#89958c;box-shadow:0 0 0 3px rgba(137,149,140,.13)}
@media(max-width:760px){
  .topbar{height:auto;min-height:60px;flex-wrap:wrap;row-gap:3px}
  .breadcrumbs{flex:1;min-width:0}
  .topbar-actions{flex:1 1 100%;width:100%;gap:7px;flex-wrap:nowrap;justify-content:flex-end}
  .topbar-actions .avatar-small{display:none!important}
  .project-picker label>span{display:none}
  .project-picker select{min-width:0;max-width:130px}
  .storage-indicator{display:flex!important;max-width:none;font-size:12px}
}
@media(max-width:480px){
  .topbar{padding:8px 9px}
  .topbar-actions{justify-content:space-between;gap:5px}
  .project-picker select{max-width:108px}
  .topbar-actions .button{font-size:12px;padding:6px 8px}
}
@media(max-width:520px){
  .supabase-summary-head>p{flex-basis:100%}
  .supabase-data-grid{grid-template-columns:1fr}
}

/* The legacy guide-persistence card was a flex row; restore normal article flow to prevent collapsed columns. */
.documentation-message.guide-persistence{display:block!important;grid-column:auto;min-width:0;min-height:0;max-width:100%;background:transparent}
.documentation-message{scroll-margin-top:88px}

.documentation-message,.documentation-message p,.documentation-message li,.documentation-message a,.documentation-message code{overflow-wrap:anywhere;word-break:normal}

/* Five-item mobile navigation: evenly sized destinations with compact, centered content. */
.mobile-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr));justify-items:stretch}
.mobile-nav-link{min-width:0;padding-inline:0;font-size:13px;font-weight:750;line-height:1.15}
.mobile-nav-link .mobile-nav-icon{display:grid;width:22px;height:22px;place-items:center;line-height:1}
.mobile-nav-link .mobile-nav-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.mobile-nav-link .mobile-nav-label{max-width:100%;font-size:13px;font-weight:750;white-space:nowrap}
.mobile-nav-link.active{font-weight:800}
.mobile-nav-link[hidden]{display:none!important}
/* Catalog and quick-draft refinements for narrow phones only. */
.donor-board-heading h2{display:flex;align-items:center;gap:8px}
.donor-heading-heart{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){
  #view-catalog .page-intro{align-items:flex-start;flex-direction:column;gap:10px}
  #view-catalog .page-intro>div:first-child{width:100%;min-width:0}
  #view-catalog .page-intro h1{font-size:clamp(23px,6.4vw,27px);line-height:1.15;overflow-wrap:anywhere}
  #view-catalog .page-intro .page-lede{max-width:36rem;overflow-wrap:anywhere}
  #view-catalog .source-tag{width:fit-content;max-width:100%;min-width:0}
  #view-catalog .source-tag small{max-width:none;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.35}
  #view-catalog .hero-copy{padding:22px 16px 92px}
  #view-catalog .hero-copy h2{font-size:clamp(21px,6.5vw,25px);line-height:1.16;overflow-wrap:anywhere}
  #view-catalog .hero-copy p{max-width:34rem;overflow-wrap:anywhere}
  #view-catalog .hero-actions{align-items:flex-start;flex-direction:column;gap:9px}
  #view-catalog .hero-footnote{display:flex;align-items:flex-start;max-width:min(100%,250px);line-height:1.4}
  #view-catalog .hero-float-card{right:11px;bottom:10px;z-index:3;transform:scale(.82);transform-origin:right bottom}
  #view-catalog .metric-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  #view-catalog .metric-card{min-width:0;min-height:78px;align-items:flex-start;gap:8px;padding:10px}
  #view-catalog .metric-card .metric-icon{flex:0 0 27px}
  #view-catalog .metric-card>div:last-child{min-width:0;overflow-wrap:anywhere}
  #view-catalog .metric-label{font-size:12px;letter-spacing:.45px;line-height:1.3;overflow-wrap:anywhere}
  #view-catalog .metric-card strong{font-size:15px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
  #view-catalog .metric-card small{line-height:1.35;white-space:normal;overflow-wrap:anywhere}
  .draft-side{display:block;min-width:0}
  .quick-draft-list{min-height:100px;max-height:min(34vh,220px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(101,120,105,.35) transparent;touch-action:pan-y}
  .quick-draft-list::-webkit-scrollbar{width:5px;height:5px}
  .quick-draft-list::-webkit-scrollbar-track{background:transparent}
  .quick-draft-list::-webkit-scrollbar-thumb{border:1px solid transparent;border-radius:5px;background:rgba(101,120,105,.32);background-clip:padding-box}
  .quick-draft-list::-webkit-scrollbar-thumb:hover{background-color:rgba(101,120,105,.55)}
  .quick-item{grid-template-columns:minmax(0,1fr) minmax(78px,auto);align-items:start;gap:5px 8px}
  .quick-item-name{min-width:0;flex-wrap:wrap;align-items:flex-start;gap:3px 6px}
  .quick-item-code{font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
  .quick-item-title{flex:1 1 100%;max-height:none;overflow:visible;font-size:12px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
  .quick-item-meta{grid-column:1;min-width:0;display:flex;flex-wrap:wrap;gap:4px;margin:0;font-size:12px;line-height:1.35;overflow-wrap:anywhere}
  .quick-item-total{max-width:105px;font-size:12px;line-height:1.35;text-align:right;white-space:normal;overflow-wrap:anywhere}
  .quick-empty strong,.quick-empty span{max-width:100%;overflow-wrap:anywhere;line-height:1.45}
}


/* Public templates are browseable without exposing the signed-in owner's private library. */
.shared-template-library{display:grid;gap:14px;margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:var(--shadow)}
.shared-template-library-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.shared-template-library-head h2{margin:3px 0 5px;color:var(--ink);font-size:19px;letter-spacing:-.35px}
.shared-template-library-head p{max-width:650px;margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.shared-template-count{flex:0 0 auto;padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:12px;font-weight:700}
.shared-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.shared-template-card{display:flex;min-width:0;flex-direction:column;gap:9px;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}
.shared-template-card-meta{display:flex;align-items:center;justify-content:space-between;gap:7px;color:var(--muted);font-size:12px}
.shared-template-badge{padding:4px 7px;border-radius:999px;background:var(--mint);color:var(--green-deep);font-size:12px;font-weight:800;letter-spacing:.35px}
.shared-template-card h3{margin:0;color:var(--ink);font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.shared-template-publisher{display:flex;min-width:0;align-items:center;gap:9px;margin-top:-3px}
.shared-template-publisher-avatar{display:grid;width:34px;height:34px;flex:none;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:50%;color:var(--ink);font-size:14px;font-weight:800}
.shared-template-publisher-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.shared-template-publisher-copy{display:grid;min-width:0;gap:2px}
.shared-template-publisher-copy small{color:var(--muted);font-size:12px;line-height:1.2}
.shared-template-publisher-copy strong{overflow:hidden;color:var(--ink);font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.shared-template-card>p{margin:0;color:var(--ink-soft);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.shared-template-card-count{display:flex;align-items:baseline;gap:6px;margin:2px 0;color:var(--muted);font-size:12px}
.shared-template-card-count strong{color:var(--green-deep);font-size:17px}
.shared-template-owner-note{color:var(--green-deep);font-size:12px;font-weight:700}
.shared-template-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto}
.shared-template-card-actions .button{align-self:flex-start;margin-top:0}
.shared-template-empty{grid-column:1/-1;display:grid;gap:5px;padding:17px;border:1px dashed var(--line);border-radius:12px;background:var(--panel);color:var(--ink-soft)}
.shared-template-empty strong{color:var(--ink);font-size:13px}
.shared-template-empty p{margin:0;color:var(--muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.shared-template-preview-dialog{width:min(900px,calc(100vw - 24px));max-width:none;max-height:min(92dvh,900px);padding:0;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--ink);box-shadow:0 24px 80px rgba(10,25,15,.32);overflow:hidden}
.shared-template-preview-dialog::backdrop{background:rgba(15,30,20,.55);backdrop-filter:blur(3px)}
.shared-template-preview-sheet{display:flex;max-height:min(92dvh,900px);flex-direction:column}
.shared-template-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:20px 22px 15px;border-bottom:1px solid var(--line)}
.shared-template-preview-header h2{margin:5px 0;color:var(--ink);font-size:21px;line-height:1.25;overflow-wrap:anywhere}
.shared-template-preview-header p{margin:0;color:var(--muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.shared-template-preview-close{width:36px;height:36px;flex:none;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--ink-soft);font-size:24px;line-height:1;cursor:pointer}
.shared-template-preview-note{margin:14px 20px 8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--muted);font-size:12px;line-height:1.5}
.shared-template-preview-status{padding:0 20px 10px;color:var(--green-deep);font-size:12px;line-height:1.5}
.shared-template-preview-list{display:grid;gap:9px;padding:0 20px 18px;overflow:auto;overscroll-behavior:contain}
.shared-template-preview-analysis{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.shared-template-preview-analysis-head{display:flex;align-items:flex-start;gap:10px}
.shared-template-preview-number{display:grid;width:27px;height:27px;flex:none;place-items:center;border-radius:8px;background:var(--mint);color:var(--green-deep);font-size:12px;font-weight:800}
.shared-template-preview-analysis h3{margin:1px 0 4px;color:var(--ink);font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.shared-template-preview-analysis-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.shared-template-preview-analysis-head p strong{color:var(--ink-soft)}
.shared-template-preview-components{margin:10px 0 0 37px;border-top:1px solid var(--line)}
.shared-template-preview-components summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0 2px;color:var(--green-deep);font-size:12px;font-weight:700;cursor:pointer}
.shared-template-preview-components summary span{color:var(--muted);font-weight:600}
.shared-template-preview-component-list{display:grid;margin-top:6px}
.shared-template-preview-component{display:grid;grid-template-columns:minmax(88px,.34fr) minmax(0,1fr) minmax(95px,.3fr);align-items:center;gap:9px;padding:7px 0;border-top:1px solid var(--line);font-size:12px}
.shared-template-preview-kind{color:var(--muted);font-size:12px}
.shared-template-preview-component-name{min-width:0;color:var(--ink-soft);overflow-wrap:anywhere}
.shared-template-preview-component-name strong{display:block;font-size:12px;font-weight:650}
.shared-template-preview-component-name small{display:block;margin-top:2px;color:var(--muted);font-size:12px}
.shared-template-preview-coefficient{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}
.shared-template-preview-no-components,.shared-template-preview-empty{margin:10px 0 0 37px;color:var(--muted);font-size:12px}
.shared-template-preview-footer{display:flex;justify-content:flex-end;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel)}
.shared-template-preview-footer .button{min-width:100px}
.template-private-area[hidden]{display:none!important}
#templatePublicLoginButton{margin-top:13px}
.saved-template-actions{flex-wrap:wrap;justify-content:flex-start}
.saved-template-actions .button{flex:1 1 42%;min-width:112px}
.template-delete-button{flex:0 0 auto}
html[data-theme="dark"] .shared-template-badge{background:#27372d;color:#d3e7d1;border:1px solid #405449}
html[data-theme="dark"] .shared-template-card-count strong,html[data-theme="dark"] .shared-template-owner-note{color:#a9d5b3}
html[data-theme="dark"] .shared-template-preview-number{background:#27372d;color:#b4d8b4}
@media(max-width:1180px){.shared-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.shared-template-library{padding:14px;border-radius:13px}.shared-template-library-head{flex-direction:column;gap:8px}.shared-template-library-head h2{font-size:17px}.shared-template-library-head p{font-size:12px}.shared-template-count{align-self:flex-start}.shared-template-grid{grid-template-columns:minmax(0,1fr);gap:8px}.shared-template-card{padding:13px}.shared-template-card h3{font-size:14px}.shared-template-preview-dialog{width:calc(100vw - 16px);max-height:94dvh;border-radius:16px}.shared-template-preview-sheet{max-height:94dvh}.shared-template-preview-header{padding:15px}.shared-template-preview-header h2{font-size:18px}.shared-template-preview-note{margin:11px 13px 7px;padding:9px 10px}.shared-template-preview-status{padding:0 13px 9px}.shared-template-preview-list{padding:0 13px 14px}.shared-template-preview-analysis{padding:10px}.shared-template-preview-components{margin-left:0}.shared-template-preview-component{grid-template-columns:minmax(65px,.3fr) minmax(0,1fr);gap:6px}.shared-template-preview-coefficient{grid-column:2;text-align:left}.shared-template-preview-no-components{margin-left:0}.shared-template-preview-footer{padding:10px 13px max(10px,env(safe-area-inset-bottom))}}


/* Responsive header: keep the breadcrumb separate from a stable control row on tablets and phones. */
.topbar .mobile-menu{display:none!important}
@media(max-width:1050px){
  .topbar{height:auto;min-height:66px;flex-wrap:wrap;align-content:center;row-gap:8px;padding:10px 20px}
  .topbar .mobile-menu{display:none!important}
  .topbar .breadcrumbs{order:0;flex:1 1 100%;min-width:0}
  .topbar .breadcrumbs strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .topbar .topbar-actions{order:1;flex:1 1 100%;width:100%;min-width:0;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px}
  .topbar .project-picker{flex:0 1 auto;min-width:0}
  .topbar .project-picker label{min-width:0!important}
  .topbar .project-picker select{min-width:145px;max-width:190px;min-height:36px}
  .estimatra-signed-in .topbar .storage-indicator{display:flex!important;flex:0 1 auto;min-width:0;max-width:none;align-items:center;white-space:nowrap}
  .topbar .storage-indicator span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .topbar .auth-control{flex:0 0 auto;min-width:0}
  .topbar .auth-control .button{min-height:36px}
  .topbar .topbar-actions .avatar-small{display:grid!important;width:32px;height:32px;flex:0 0 32px}
  .topbar .topbar-actions .avatar-small[hidden]{display:none!important}
}
@media(max-width:820px){
  .topbar{min-height:64px;padding:9px 18px;column-gap:10px;row-gap:7px}
  .topbar .mobile-menu{display:grid!important;order:0;width:36px;height:36px;flex:0 0 36px;margin:0}
  .topbar .breadcrumbs{order:1;flex:1 1 0;min-width:0}
  .topbar .topbar-actions{order:2}
}
@media(max-width:760px){
  .topbar{min-height:0;padding:8px 14px;row-gap:6px}
  .topbar .topbar-actions{justify-content:space-between;flex-wrap:nowrap;gap:5px}
  .topbar .project-picker{flex:0 1 auto}
  .topbar .project-picker label>span{display:none}
  .topbar .project-picker select{min-width:0;max-width:130px;min-height:34px}
  .topbar .storage-indicator{flex:0 1 auto;gap:6px}
  .topbar .auth-control .button{min-height:34px;padding:6px 8px}
  .topbar .topbar-actions .avatar-small{width:32px;height:32px;flex-basis:32px}
}
@media(max-width:480px){
  .topbar{padding:8px 9px}
  .topbar .topbar-actions{gap:4px}
  .topbar .project-picker select{max-width:108px}
  .topbar .storage-indicator{gap:5px}
}
@media(max-width:360px){
  .topbar .topbar-actions{gap:3px}
  .topbar .project-picker select{max-width:94px}
  .topbar .auth-control .button{padding:6px 6px}
}


/* Selectable PDF palette, wrapped safely beside export actions on narrow screens. */
.draft-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.pdf-palette-picker{display:flex;align-items:center;gap:7px;flex:0 1 auto;min-width:0;color:#5f6d62;font-size:12px;font-weight:650}
.pdf-palette-picker>span{white-space:nowrap}
.pdf-palette-picker select{min-height:36px;min-width:128px;max-width:170px;border:1px solid #dce5dc;border-radius:8px;background:#fff;padding:7px 9px;color:#354239;font:inherit;font-size:12px}
.pdf-palette-picker select:focus{outline:2px solid rgba(74,128,84,.2);outline-offset:1px;border-color:#95b69a}
@media(max-width:760px){
  .draft-intro .draft-actions{width:100%;align-items:center}
  .draft-intro .draft-actions .pdf-palette-picker{flex:1 1 140px}
  .draft-intro .draft-actions .pdf-palette-picker select{min-width:100px;max-width:140px}
}
@media(max-width:480px){
  .draft-intro .draft-actions .pdf-palette-picker{order:-1;flex:1 1 100%;width:100%}
  .draft-intro .draft-actions .pdf-palette-picker select{flex:1;min-width:0;max-width:none}
  .draft-intro .draft-actions .button{flex:1 1 calc(50% - 4px)}
}


/* Coin documentation tables and reading aids. */
#view-guide .documentation-table-scroll{max-width:100%;margin:13px 0;overflow-x:auto;border:1px solid #e3eae0;border-radius:10px;background:#fff}
#view-guide .documentation-table-scroll:focus-visible{outline:2px solid #4b7650;outline-offset:3px}
#view-guide .documentation-coin-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;line-height:1.6}
#view-guide .documentation-coin-table caption{padding:11px 13px;text-align:left;color:#35483a;font-weight:750;background:#f6faf4}
#view-guide .documentation-coin-table th,#view-guide .documentation-coin-table td{padding:10px 13px;vertical-align:top;border-top:1px solid #e8eee5;color:#627066;white-space:normal;overflow-wrap:anywhere}
#view-guide .documentation-coin-table thead th{background:#fbfdf9;color:#4e6354;font-size:12px;font-weight:750}
#view-guide .documentation-coin-table tbody th{color:#35483a;font-weight:650;width:34%}
#view-guide .documentation-steps{display:grid;gap:8px;margin:9px 0 12px;padding-left:23px}
#view-guide .documentation-message:target{border-radius:10px;background:linear-gradient(90deg,#f8fbf5,transparent)}
@media(max-width:760px){
  #view-guide .documentation-coin-table{font-size:12px}
  #view-guide .documentation-coin-table th,#view-guide .documentation-coin-table td{padding:9px 8px}
  #view-guide .documentation-coin-table tbody th{width:31%}
}

/* Forum author identity uses current public profile photos, with initials when unavailable. */
.forum-author-row{display:inline-flex;align-items:center;gap:8px;min-width:0;vertical-align:middle}
.forum-author-name{min-width:0;color:inherit;font-weight:650;overflow-wrap:anywhere}
.forum-author-avatar{display:inline-grid;flex:none;place-items:center;overflow:hidden}
.forum-author-avatar img{display:block;width:100%;height:100%;object-fit:contain}
.forum-thread-author{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.forum-thread-author .forum-author-row{color:#647268}
.forum-reply .forum-author-row{flex:none;align-items:flex-start;gap:7px}
.forum-reply .forum-author-name{max-width:155px;padding-top:3px;color:#506153;font-size:12px}
.forum-reply .forum-reply-date{display:block;margin:0;color:#9aa39b;font-size:12px;font-weight:500}
.forum-reply .forum-reply-date small{margin:0}
.forum-topic-avatar.forum-author-avatar{border-radius:12px}
.reply-avatar.forum-author-avatar{border-radius:8px}
@media(max-width:760px){.forum-reply .forum-author-name{max-width:100px}.forum-thread-author{gap:3px}}
