:root{--paper:#f6f5f0;--white:#fff;--ink:#22352f;--muted:#768079;--line:#e5e8df;--green:#214a3c;--orange:#e99662;--radius:16px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:3px}input:focus,textarea:focus,select:focus{outline:2px solid #6e987b;outline-offset:2px}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.04em}h1{font-family:var(--serif);font-size:46px;line-height:1.13;font-weight:400;margin-bottom:12px}h2{font-size:19px;font-weight:600;margin-bottom:4px}h3{font-size:15px}p{margin-bottom:16px}[hidden]{display:none!important}.muted,.form-note{color:var(--muted)}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.17em;display:block;margin-bottom:12px}.primary,.secondary,.danger{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:12px 18px;border-radius:8px;border:1px solid transparent;font-weight:550;font-size:13px;transition:background .15s}.primary{color:white;background:var(--green)}.primary:hover{background:#2d614e}.secondary{color:var(--ink);background:white;border-color:var(--line)}.secondary:hover{background:#f0f3eb}.danger{background:#af3a30;color:white}.wide{width:100%}.primary.wide{justify-content:space-between}.text-link{border:0;background:transparent;padding:0;color:var(--green);text-decoration:underline;text-underline-offset:3px;font-size:12px}.icon-button{border:0;background:transparent;color:inherit;font-size:24px;line-height:1;padding:8px;border-radius:6px}.icon-button:hover{background:#e8ece2}label{display:block;font-size:12px;font-weight:550;margin-bottom:18px}input,textarea,select{display:block;width:100%;margin-top:8px;border:1px solid #dce1d6;border-radius:7px;padding:11px 12px;color:var(--ink);background:white;font-size:13px}input::placeholder,textarea::placeholder{color:#959e94}textarea{resize:vertical;min-height:88px}input[type=file]{font-size:11px}.error{font-size:12px;color:#9c2e24;background:#fff0ed;border-radius:7px;padding:12px;margin-top:12px}.form-note{font-size:11px;line-height:1.7}.unit{float:right;color:var(--muted);font-weight:400}.badge{display:inline-block;border-radius:20px;padding:5px 10px;font-size:10px;font-weight:600;background:#eef2e8;color:var(--green);white-space:nowrap}.badge.neutral{background:#f0f2ec;color:#647565}.badge.finished,.badge.active{background:#e9f3e9;color:#356a44}.badge.processing,.badge.queued{background:#fff0db;color:#966923}.badge.failed,.badge.revoked,.badge.expired{background:#fbeae6;color:#a15045}.brand{display:flex;gap:13px;align-items:center;font-size:16px;font-weight:650;line-height:1.25}.brand-mark{display:grid;place-items:center;background:var(--green);color:white;width:40px;height:40px;flex-shrink:0;font-family:var(--serif);font-size:30px;border-radius:10px;padding-bottom:6px}.login-screen{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-story{position:relative;padding:48px 65px;background:#e8ecdf;overflow:hidden}.login-copy{position:relative;z-index:1;margin-top:86px}.login-copy h1{font-size:64px;line-height:1.03;margin-bottom:24px}.login-copy p{color:#5d6f61;font-size:14px;line-height:1.8}.login-footer{position:absolute;bottom:20px;color:#809077;font-size:11px}.login-side{display:flex;align-items:center;justify-content:center;padding:50px 40px}.login-card{max-width:340px;width:100%}.login-card h2{font-family:var(--serif);font-size:38px;font-weight:400;margin-bottom:12px}.login-card>.muted{margin-bottom:35px;line-height:1.8}.login-note{font-size:10px;color:#92998f;margin-top:24px;text-align:center}.book-art{position:absolute;bottom:55px;right:38px;width:200px;height:240px}.art-book{transform:rotate(-13deg);position:relative;z-index:1;background:#e9a06d;width:155px;height:205px;box-shadow:8px 5px 0 #f9f2df,11px 5px 0 #b87750;border-radius:3px 10px 10px 3px;padding:25px;color:#483d2b;border-left:9px solid #ce8558}.art-book span{font-family:var(--serif);font-size:29px;line-height:1.05;display:block}.art-book i{font-size:6px;font-style:normal;position:absolute;bottom:14px;letter-spacing:.1em}.art-shadow{position:absolute;width:190px;height:30px;border-radius:50%;background:#cbd5be;bottom:0;transform:rotate(-10deg)}.art-dot{position:absolute;width:45px;height:45px;border-radius:50%;background:#f7f6e6;right:7px;top:-24px}.studio{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh}.sidebar{padding:32px 22px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:#edf0e7;border-right:1px solid var(--line)}.sidebar .brand{padding:0 8px}.sidebar-label{color:#899783;margin:50px 13px 15px}.nav{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;padding:13px 14px;text-align:left;border-radius:8px;color:#697c6c;font-size:12px;margin-bottom:7px}.nav>span:first-child{font-size:20px;line-height:1}.nav.active{background:var(--green);color:white}.count{margin-left:auto;padding:2px 6px;border-radius:5px;font-size:10px;background:#e2e8da}.nav.active .count{color:var(--ink)}.sidebar-bottom{margin-top:auto}.connection{border-bottom:1px solid #dbe2d3;padding:18px 6px;display:flex;gap:8px;align-items:center;font-size:10px;color:#74856c}.status-dot{display:inline-block;width:6px;height:6px;background:#699863;border-radius:50%}.account{display:flex;align-items:center;gap:10px;padding-top:22px}.avatar{display:grid;place-items:center;background:#dce5d2;color:#4f6848;width:32px;height:32px;border-radius:50%;font-size:12px}.account strong{display:block;font-size:11px;max-width:98px;overflow:hidden;text-overflow:ellipsis}.account small{font-size:9px;color:#889381}.account .icon-button{margin-left:auto;font-size:20px}.workspace{min-width:0}.topbar{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;color:#8b958b;font-size:10px;gap:20px}.topbar strong{font-weight:500;color:#526452}.crumb{margin:0 10px;color:#bbc3b7}.topbar-note{font-size:8px;letter-spacing:.17em;color:#9aa694}.panel{padding:42px;max-width:1450px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:32px}.page-heading .eyebrow{color:#88977e;font-size:9px}.page-heading .muted{font-size:12px;margin-bottom:0}.page-heading h1{font-size:43px}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:20px;box-shadow:0 2px 4px #19352b02}.card-heading{display:flex;gap:12px;align-items:center;margin-bottom:22px}.card-heading h2{font-size:15px;letter-spacing:-.02em}.card-heading p{font-size:10px;color:var(--muted);margin-bottom:0}.card-heading .badge{margin-left:auto}.step{height:30px;width:30px;flex-shrink:0;display:grid;place-items:center;background:#eef2e8;border-radius:8px;font-size:10px;color:#809271}.test-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:25px}.fields{display:grid;gap:16px}.format-fields{grid-template-columns:repeat(4,1fr)}.format-fields label{margin-bottom:0;font-size:10px}.format-fields input{font-size:13px;padding:10px}.page-row{padding:18px 0;border-top:1px solid var(--line)}.page-row-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.page-row-heading h3{font-size:11px;margin:0}.page-row-heading button{font-size:10px;color:#899583}.page-row{display:grid;grid-template-columns:145px minmax(0,1fr);gap:15px}.page-row-heading{grid-column:1/-1}.upload-label{background:#f7f8f2;border:1px dashed #cdd8c4;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 8px;border-radius:9px;margin:0;min-height:180px;position:relative;overflow:hidden;cursor:pointer}.upload-icon{font-size:28px;color:#89a079;margin-bottom:5px}.upload-caption{font-size:10px;text-align:center;max-width:130px;overflow-wrap:anywhere}.upload-label small{font-size:8px;color:#929f89;text-align:center;margin-top:5px}.upload-label input{font-size:9px;padding:0;border:0;background:transparent;max-width:120px;margin-top:12px}.upload-label img{width:100%;height:100px;object-fit:cover;margin-bottom:8px;border-radius:5px}.page-content label{font-size:10px;margin-bottom:12px}.page-content textarea{font-size:12px;min-height:77px;line-height:1.7}.page-content label:last-child{margin:0}.page-content select{font-size:11px;padding:8px}.add-page{display:block;width:100%;border:1px dashed #d0dbc8;padding:11px;background:#fbfcf7;color:#758b69;border-radius:8px;font-size:11px}.submit-card>label{font-size:11px}.submit-line{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}.submit-line .muted{font-size:10px}.results-column{min-width:0}.results-card{padding:26px;position:sticky;top:25px}.results-card>.eyebrow{color:#98a18e;font-size:8px}.results-card>h2{font-family:var(--serif);font-size:26px;font-weight:400}.empty-result{text-align:center;padding:50px 0 35px}.empty-book{font-size:68px;color:#bfcdb1;line-height:1;margin-bottom:20px}.empty-result h3{font-family:var(--serif);font-size:19px;font-weight:400;letter-spacing:-.025em}.empty-result p{font-size:10px;color:#9ca695;line-height:1.8}.empty-result .badge{font-size:8px;letter-spacing:.09em;padding:7px 14px}.results-note{font-size:9px;color:#99a292;text-align:center;line-height:1.8;padding:0 20px}.job-line{display:flex;align-items:center;gap:10px;margin-top:25px}.job-line code{font-size:9px;color:#9ba58f;overflow:hidden;text-overflow:ellipsis}.job-line+p{font-size:11px;margin-top:15px}.downloads{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.downloads .primary,.downloads .secondary{font-size:10px;padding:9px 10px;gap:0}.downloads .text-link{font-size:10px;width:100%;margin-top:4px}.validation-summary{padding:12px;border-radius:8px;background:#eef5e9;font-size:11px;margin-bottom:15px}.validation-summary.invalid{background:#fff0e9;color:#9b5840}.warning{font-size:10px;padding:8px 0;border-bottom:1px solid var(--line);color:#90714d}.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.preview-grid figure{margin:0}.preview-grid img{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:5px}.preview-grid figcaption{font-size:9px;color:#8d9b83;margin-top:5px}.keys-grid{display:grid;grid-template-columns:315px minmax(0,1fr);gap:24px}.key-list-card{min-height:300px}.key-item{display:flex;align-items:flex-start;gap:12px;padding:18px 0;border-top:1px solid var(--line)}.key-symbol{padding:8px 12px;background:#f1f4eb;border-radius:8px;font-size:18px;color:#83987a}.key-details{flex:1;min-width:0}.key-details strong{font-size:12px;display:block;overflow-wrap:anywhere}.key-details code{font-size:10px;color:#889680;display:block;margin-top:5px}.key-details p{font-size:9px;color:#9aa590;margin:8px 0 0}.key-item .text-link{font-size:10px;color:#a26656;margin-left:10px}.key-actions{display:flex;gap:10px;align-items:center}.connection-guide pre{background:#f3f6ed;padding:18px;border-radius:9px;font-size:11px;line-height:1.9;overflow:auto;white-space:pre}.connection-guide .eyebrow{color:#91a087}.history-card{padding:0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}th{font-weight:550;color:#96a28c;font-size:9px;padding:20px;background:#fafbf7;border-bottom:1px solid var(--line)}td{padding:18px 20px;border-bottom:1px solid var(--line)}td code{font-size:10px}tbody tr:last-child td{border-bottom:0}.empty-history{padding:60px 20px;text-align:center;color:#91a084;font-size:12px}.notice{background:#fff0da;color:#8a6739;border:1px solid #eddfc6;padding:14px 18px;border-radius:9px;font-size:11px;margin-bottom:24px}.toast{position:fixed;bottom:24px;right:24px;z-index:100;border:1px solid #c7d5bd;background:#f1f6e9;color:var(--green);padding:14px 20px;border-radius:10px;box-shadow:0 5px 20px #203a2515;font-size:12px;max-width:min(400px,90vw)}dialog{border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);padding:32px;width:min(480px,90vw);box-shadow:0 20px 80px #21382d30}dialog::backdrop{background:#122a2180;backdrop-filter:blur(4px)}dialog h2{font-family:var(--serif);font-size:30px;font-weight:400}dialog .muted{font-size:12px}dialog input{font-family:monospace;font-size:12px}.dialog-actions{display:flex;gap:12px;margin-top:25px}.dialog-close{position:absolute;right:14px;top:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.panel{padding:55px 60px}.test-grid{gap:35px}.login-story{padding-left:100px}.login-copy h1{font-size:78px}.book-art{right:80px;bottom:70px;transform:scale(1.25)}}
@media(max-width:1100px){.studio{grid-template-columns:195px minmax(0,1fr)}.sidebar{padding:30px 15px}.panel{padding:30px}.topbar{padding:0 30px}.test-grid{grid-template-columns:1fr}.results-card{position:static}.preview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.keys-grid{grid-template-columns:1fr}.page-heading h1{font-size:37px}.page-heading{align-items:flex-start}.page-heading .secondary{flex-shrink:0;font-size:10px}.book-art{transform:scale(.75);transform-origin:bottom right;right:20px;bottom:35px}.login-story{padding:35px}.login-copy h1{font-size:52px}.login-copy{margin-top:65px}.login-copy p{font-size:12px}.topbar-note{display:none}}
@media(max-width:680px){.login-screen{display:block}.login-story{padding:24px;background:#e8ecdf}.login-copy{margin-top:30px}.login-copy h1{font-size:38px}.login-copy h1 br{display:none}.login-copy p,.login-footer,.book-art{display:none}.login-side{padding:36px 25px}.studio{display:block}.sidebar{height:auto;position:static;padding:16px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .brand{font-size:12px}.sidebar .brand br{display:none}.brand-mark{height:32px;width:32px;font-size:25px}.sidebar-label{display:none}.sidebar nav{display:flex;gap:5px;margin-top:18px}.nav{font-size:10px;gap:7px;padding:10px;justify-content:center;margin:0}.nav>span:first-child{font-size:16px}.count{display:none}.sidebar-bottom{display:flex;justify-content:space-between;margin-top:10px;align-items:center}.connection{border:0;padding:4px}.account{padding:0}.account .avatar,.account small{display:none}.account strong{font-size:10px}.account .icon-button{font-size:17px}.topbar{height:48px;padding:0 22px}.panel{padding:27px 18px}.page-heading{display:block;margin-bottom:25px}.page-heading h1{font-size:34px}.page-heading .secondary,.page-heading>.badge{margin-top:18px}.card{padding:20px}.card-heading p{font-size:9px}.card-heading h2{font-size:14px}.format-fields{gap:10px;grid-template-columns:repeat(2,1fr)}.page-row{grid-template-columns:110px minmax(0,1fr);gap:10px}.upload-label{padding:8px;min-height:160px}.upload-caption{font-size:9px}.upload-label small{font-size:7px}.upload-label input{max-width:95px;font-size:8px}.page-content textarea{padding:8px}.preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.submit-line{align-items:flex-start}.submit-line .muted{max-width:140px}.key-item{flex-wrap:wrap}.key-actions{margin-left:45px}.connection-guide pre{font-size:9px}.toast{bottom:14px;right:14px}.dialog-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important}}
