:root{--blue: #005eb8;--navy: #0e2a47;--navy-hover: #133659;--ink: #0f1b2a;--ink-2: #3a4a5c;--ink-3: #5b6b7d;--muted: #7a8898;--bg: #f4f7fa;--card: #ffffff;--rule: #e3e8ee;--rule-2: #d8e0e8;--btn-border: #c5d0db;--on-blue: #e1edf9;--disabled: #b4bec9;--danger: #a02b20;--danger-bg: #fdf1ef;--shadow: 0 1px 2px rgba(14, 42, 71, .08);--head: "Raleway", "Helvetica Neue", Arial, sans-serif;--body: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--body);font-size:15px;line-height:1.5;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-variant-numeric:lining-nums}a{color:var(--blue);text-decoration:none;transition:color .15s ease}a:hover{color:var(--navy)}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.shell{display:grid;grid-template-columns:400px 1fr;min-height:100vh}.panel{position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto;background:var(--blue);color:#fff;padding:48px 44px 40px;display:flex;flex-direction:column;justify-content:space-between;gap:48px}.panel a,.panel a:hover{color:#fff}.panel :focus-visible{outline-color:#fff}.panel__top{display:flex;flex-direction:column;gap:72px}.wordmark{font:800 17px/1 var(--head);letter-spacing:.14em;align-self:flex-start}.panel__title{display:flex;flex-direction:column;gap:24px}.panel__title h1{font:800 48px/1.02 var(--head);letter-spacing:-.02em;overflow-wrap:break-word}.panel__title p{font:400 18px/1.55 var(--body);color:var(--on-blue);text-wrap:pretty}.panel__nav{display:flex;flex-direction:column;gap:14px;font:700 13px/1 var(--head);letter-spacing:.12em}.panel__nav a[aria-current=page]{display:flex;align-items:center;gap:10px}.panel__nav a[aria-current=page]:before{content:"";width:14px;height:2px;background:#fff}.panel__nav .coffee{align-self:flex-start;margin-top:14px;padding:14px 18px;border:1px solid rgba(255,255,255,.6);transition:background .15s ease,border-color .15s ease}.panel__nav .coffee:hover{background:#ffffff1f;border-color:#fff}.content{min-width:0;padding:48px 56px 56px;display:flex;flex-direction:column;gap:32px}.content>.box,.content>.tool{width:100%;max-width:760px}.foot{margin-top:auto;font:600 12px/1 var(--head);letter-spacing:.1em;color:var(--muted)}.box{background:var(--card);padding:40px;box-shadow:var(--shadow)}.eyebrow,.box h2,.card h2{font:700 12px/1.4 var(--head);letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:20px}label{font:700 12px/1.4 var(--head);letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}input[type=text],input[type=number],select{width:100%;padding:12px 14px;border:1px solid var(--btn-border);border-radius:0;font:400 15px/1.4 var(--body);color:var(--ink);background:#fff;outline:none;transition:border-color .15s ease}input[type=text]:focus,input[type=number]:focus,select:focus{border-color:var(--blue)}input[type=text]:focus-visible,input[type=number]:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:2px}input[type=radio],input[type=checkbox]{accent-color:var(--blue);width:16px;height:16px;flex:none}fieldset{border:none;display:flex;flex-direction:column;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field-hint,.field-help{font:400 13px/1.4 var(--body);color:var(--ink-3)}.radio-group{display:flex;flex-wrap:wrap;gap:24px}.radio-group label,.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font:400 15px/1.4 var(--body);letter-spacing:0;text-transform:none;color:var(--ink)}button,.btn{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:16px 26px;border:1px solid var(--navy);border-radius:0;background:var(--navy);color:#fff;cursor:pointer;font:700 13px/1 var(--head);letter-spacing:.1em;text-transform:uppercase;transition:background .15s ease,border-color .15s ease,color .15s ease}button:hover:not(:disabled),.btn:hover:not(:disabled){background:var(--navy-hover);border-color:var(--navy-hover)}button:disabled{background:var(--disabled);border-color:var(--disabled);cursor:not-allowed}.btn--secondary{background:transparent;color:var(--navy);border-color:var(--btn-border)}.btn--secondary:hover:not(:disabled){background:transparent;color:var(--navy);border-color:var(--navy)}.error,.error-box{margin-top:20px;padding:14px 16px;background:var(--danger-bg);border-left:3px solid var(--danger);color:var(--danger);font:400 14px/1.5 var(--body)}@media (max-width: 1199px){.shell{grid-template-columns:340px 1fr}.panel{padding:40px 32px 32px}.panel__top{gap:56px}.panel__title h1{font-size:40px}.panel__title p{font-size:16px}.content{padding:40px 32px 48px}}@media (max-width: 959px){.shell{grid-template-columns:1fr}.panel{position:static;height:auto;overflow:visible;padding:32px 24px;gap:32px}.panel__top{gap:32px}.panel__title h1{font-size:40px}.content{padding:24px 16px 32px}.box{padding:28px 20px}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.card{background:var(--card);padding:32px 40px;box-shadow:var(--shadow);margin-bottom:20px}.preset-bar{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.preset-controls{display:flex;align-items:center;gap:12px;flex:1;min-width:240px}.preset-controls label{white-space:nowrap}.preset-controls select{flex:1;min-width:0}.save-dialog{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}.save-dialog input{flex:1;min-width:160px}.error-inline{font:400 13px/1.4 var(--body);color:var(--danger)}.fields-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:24px 20px}.preview-summary dl{display:grid;grid-template-columns:auto 1fr;gap:12px 32px}.preview-summary dt{font:700 12px/1.4 var(--head);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);align-self:center}.preview-summary dd{font:600 15px/1.4 var(--body);color:var(--ink)}.actions{display:flex;gap:12px}.btn--large{padding:18px 32px}.spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-box pre{margin-top:8px;font:400 12px/1.5 var(--mono);white-space:pre-wrap;word-break:break-word}@media (max-width: 959px){.card{padding:24px 20px}}
