:root{--bg:#f8f7f4;--surface:#fff;--surface-2:#fbfbfa;--ink:#27231c;--ink-2:#524d42;--muted:#787164;--line:#eae7e1;--line-strong:#dad6cd;--chip:#f0eeea;--brand:#f5b82e;--accent:#f5b82e;--accent-ink:#956907;--accent-soft:#fef5e2;--accent-on:#16141c;--accent-hover:#f7c450;--espresso:#2c2616;--espresso-2:#443a22;--sand:#eee4cd;--side-text:#dad5c8;--side-muted:#a69b82;--side-line:#524528;--hero-end:#524528;--accent-bright:#f5b82e;--shade:44, 38, 22;--success:#3f7a52;--success-soft:#e5f1e8;--danger:#b24a3e;--danger-soft:#f8e6e3;--warning:#a8741f;--warning-soft:#f8eedb;--radius:14px;--radius-sm:9px;--shadow:0 1px 2px rgba(var(--shade), .04), 0 4px 16px rgba(var(--shade), .05);--shadow-lg:0 20px 60px rgba(var(--shade), .18);--serif:"Cormorant Garamond", Georgia, serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--sidebar:256px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:400 15px/1.5 var(--sans);-webkit-font-smoothing:antialiased;margin:0}body.modal-open{overflow:hidden}h1,h2,h3,.stat-value,.grade-pill,.average-value,.week-label{font-variant-numeric:lining-nums}h1,h2,h3{font-family:var(--serif);color:var(--ink);letter-spacing:.01em;margin:0;font-weight:600}h1{font-size:2.1rem;line-height:1.15}h2{font-size:1.35rem}h3{font-size:1.25rem}p{margin:0}a{color:var(--accent-ink);text-decoration:none}a:hover{color:var(--ink)}button{font:inherit;color:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.83rem}.text-danger{color:var(--danger)!important}.nowrap{white-space:nowrap}.spacer{flex:1}.stack{flex-direction:column;gap:16px;display:flex}.narrow{max-width:480px}.clickable{cursor:pointer}.brand{flex-direction:column;align-items:flex-start;gap:14px;line-height:1;display:flex}.brand-mark{width:auto;height:46px;display:block}.monogram{aspect-ratio:1;background:var(--accent);color:var(--accent-on);font-family:var(--serif);letter-spacing:.02em;height:var(--mono,46px);font-weight:600;line-height:1;font-size:calc(var(--mono,46px) * .44);border-radius:22%;place-items:center;display:grid}.brand-mark-chip{border-radius:12px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.brand-mark-chip.on-dark{background:#fff;padding:8px 12px;box-shadow:0 2px 10px #0000002e}.brand-mark-chip img{object-fit:contain;width:auto;max-width:200px;height:100%;display:block}.brand-name,.brand-sub{overflow-wrap:anywhere}.brand-text{flex-direction:column;display:flex}.brand-rule{background:var(--accent);opacity:.9;border-radius:2px;width:34px;height:2px;display:none}.sidebar .brand,.auth-art .brand{text-align:center;align-items:center}.sidebar .brand-rule,.auth-art .brand-rule{background:var(--accent-bright);display:block}.sidebar .monogram,.auth-art .monogram,.topbar .monogram{box-shadow:0 0 0 1.5px var(--accent-bright)}.sidebar .brand-text,.auth-art .brand-text{align-items:center}.sidebar .brand{flex:1;gap:12px}.sidebar .brand-mark{height:54px}.sidebar .brand-mark.monogram{--mono:54px}.sidebar .brand-name{letter-spacing:.03em;font-size:1.3rem;font-weight:600;line-height:1.15}.sidebar .brand-sub{opacity:.7;margin-top:6px;font-size:.88rem}.brand-name{font-family:var(--serif);letter-spacing:.03em;font-size:1.55rem;font-weight:600}.brand-sub{font-family:var(--serif);opacity:.75;letter-spacing:.04em;margin-top:4px;font-size:.95rem;font-style:italic}.shell{min-height:100vh}.topbar{display:none}.sidebar{width:var(--sidebar);background:var(--espresso);color:var(--side-text);z-index:30;flex-direction:column;padding:26px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar .brand{color:var(--sand);padding:4px 10px 6px}.sidebar-head{justify-content:space-between;align-items:center;display:flex}.sidebar .sidebar-close{color:var(--side-text);display:none}.sidebar-role{text-transform:uppercase;letter-spacing:.14em;color:var(--side-muted);margin:22px 10px 10px;font-size:.72rem}.sidebar nav{flex-direction:column;gap:2px;display:flex}.nav-link{width:100%;color:var(--side-text);text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-weight:500;display:flex}.nav-link:hover{background:var(--espresso-2);color:#fff}.nav-link.active{background:var(--sand);color:var(--espresso)}.sidebar-foot{border-top:1px solid var(--side-line);flex-direction:column;gap:2px;margin-top:auto;padding-top:14px;display:flex}.me{align-items:center;gap:10px;min-width:0;padding:4px 10px 10px;display:flex}.me-text{flex-direction:column;min-width:0;display:flex}.me-text strong{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.me-text span{color:var(--side-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.avatar{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:600;display:grid}.sidebar .avatar{background:var(--sand);color:var(--espresso)}.avatar-sm{width:32px;height:32px;font-size:.75rem}.sidebar-backdrop{display:none}.content{margin-left:var(--sidebar);max-width:calc(1240px + var(--sidebar));padding:36px 44px 64px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:26px;display:flex}.page-header p{margin-top:6px}.page-actions{flex-wrap:wrap;gap:10px;display:flex}.back-link{color:var(--muted);align-items:center;gap:2px;margin-bottom:8px;font-size:.85rem;display:inline-flex}.toolbar,.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.filters select{width:auto;min-width:180px}.search-box{flex:1;min-width:220px;max-width:420px;position:relative}.search-box svg{color:var(--muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-box input{padding-left:36px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:22px}.card-flush{padding:0;overflow:hidden}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.card-flush>.card-head{border-bottom:1px solid var(--line);margin:0;padding:16px 20px}.card-head.wrap{flex-wrap:wrap}.card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-note{border-top:1px solid var(--line);padding:12px 20px}.card-foot{border-top:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:14px 20px;display:flex}.grid-2{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.grid-2>.card{margin-bottom:0}.grid-2{margin-bottom:20px}.grid-wide-right{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.grid-wide-left{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.grid-wide-left>.stack>.card{margin-bottom:0}.stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px;display:grid}.stats>a{color:inherit}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:14px;height:100%;padding:18px 20px;transition:border-color .15s;display:flex}.stats>a:hover .stat{border-color:var(--line-strong)}.stat-icon{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-ink);border-radius:12px;flex:none;place-items:center;display:grid}.stat-value{font-family:var(--serif);gap:12px;font-size:2rem;font-weight:600;line-height:1;display:flex}.stat-label{color:var(--muted);margin-top:4px;font-size:.85rem}.stat-hint{color:var(--muted);font-size:.78rem}.hero-card{background:linear-gradient(135deg, var(--espresso) 0%, var(--hero-end) 100%);color:var(--side-text);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:26px 28px}.hero-card h2{color:#fff;margin:6px 0 12px;font-size:1.9rem}.hero-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--sand);font-size:.75rem}.hero-meta{flex-wrap:wrap;gap:18px;font-size:.92rem;display:flex}.hero-meta span{align-items:center;gap:6px;display:inline-flex}.list{margin:0;padding:0;list-style:none}.list-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.list-row:last-child{border-bottom:0}.list-padded .list-row{padding:13px 20px}.list-main{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.list-main strong{font-weight:500}.list-main a strong{color:var(--ink)}.list-main a:hover strong{color:var(--accent-ink)}.list-row.past{opacity:.6}.list-row.clickable:hover,.list-main.clickable:hover strong{color:var(--accent-ink)}.row-actions{flex:none;align-items:center;gap:4px;display:flex}.chips{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.comment{color:var(--ink-2);margin-top:2px;font-size:.85rem;font-style:italic}.date-chip{min-width:74px;color:var(--accent-ink);background:var(--accent-soft);text-align:center;border-radius:8px;flex:none;padding:5px 8px;font-size:.78rem;font-weight:600}.tiles{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:inherit;box-shadow:var(--shadow);padding:20px;transition:transform .15s,border-color .15s;display:block}.tile:hover{border-color:var(--line-strong);color:inherit;transform:translateY(-2px)}.tile h3{margin-bottom:4px}.tile-meta{color:var(--ink-2);flex-wrap:wrap;gap:6px 16px;margin-top:14px;font-size:.87rem;display:flex}.tile-meta span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.tile-foot{border-top:1px solid var(--line);color:var(--accent-ink);margin-top:12px;padding-top:12px;font-size:.83rem}.btn{white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:7px;height:40px;padding:0 16px;font-size:.92rem;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-on)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--accent-on)}.btn-ghost{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.btn-ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent-ink)}.btn-link{color:var(--accent-ink);background:0 0;height:auto;padding:0 4px}.btn-link:hover{text-decoration:underline}.forgot-link{align-self:center}.btn-sm{height:34px;padding:0 12px;font-size:.86rem}.btn-xs{border-radius:8px;gap:5px;height:28px;padding:0 9px;font-size:.78rem}.btn-block{width:100%}.btn-danger-ghost{background:var(--surface);color:var(--danger);border-color:#e8c3bd}.btn-danger-ghost:hover:not(:disabled){background:var(--danger-soft)}.btn-armed,.btn-armed:hover{background:var(--danger)!important;border-color:var(--danger)!important;color:#fff!important}.icon-btn{width:36px;height:36px;color:var(--ink-2);background:0 0;border:0;border-radius:9px;flex:none;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--accent-soft);color:var(--accent-ink)}.badge-btn{background:0 0;border:0;padding:0}.badge{white-space:nowrap;background:var(--chip);color:var(--ink-2);border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:.74rem;font-weight:600;display:inline-flex}.badge-success{background:var(--success-soft);color:var(--success)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-accent{background:var(--accent-soft);color:var(--accent-ink)}.btn .badge{margin-left:2px;padding:0 6px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:var(--ink-2);font-size:.83rem;font-weight:600}.field-hint{color:var(--muted);font-size:.78rem}input:where(:not([type=checkbox],[type=radio],[type=file])),select,textarea{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;width:100%;height:42px;padding:0 12px;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;height:auto;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}.password-input{display:block;position:relative}.password-input input{padding-right:44px}.password-toggle{width:36px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-toggle:hover{color:var(--ink-2);background:var(--surface-2)}.password-input input::-ms-reveal{display:none}input[type=checkbox]{width:17px;height:17px;accent-color:var(--espresso);flex:none;margin:0}.check{cursor:pointer;align-items:center;gap:9px;font-size:.92rem;display:inline-flex}.row-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.row-3{grid-template-columns:1.4fr 1fr 1fr;gap:14px;display:grid}.form-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:4px;display:flex}.form-error{background:var(--danger-soft);color:var(--danger);border-radius:10px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:.9rem;display:flex}.form-error svg{flex:none;margin-top:2px}.repeat-box{background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:10px;flex-direction:column;gap:12px;padding:12px 14px;display:flex}.access{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:14px;margin:0;padding:14px 16px 16px;display:flex}.access legend{color:var(--ink-2);padding:0 6px;font-size:.85rem;font-weight:600}.chip-checks{flex-wrap:wrap;gap:8px;display:flex}.chip-checks.scroll{max-height:170px;padding:2px;overflow-y:auto}.chip-check{border:1px solid var(--line-strong);cursor:pointer;background:var(--surface);-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:.86rem;display:inline-flex}.chip-check input{width:14px;height:14px}.chip-check.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.dropzone{border:1.5px dashed var(--line-strong);background:var(--surface-2);color:var(--ink-2);text-align:center;cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:26px 16px;transition:border-color .15s,background .15s;display:flex;position:relative}.dropzone:hover,.dropzone.has-file{border-color:var(--accent);background:var(--accent-soft)}.dropzone input{opacity:0;cursor:pointer;position:absolute;inset:0}.dropzone svg{color:var(--accent-ink)}.search{height:40px}.pick-list{max-height:50vh;margin:12px 0 0;padding:0;list-style:none;overflow-y:auto}.pick-list li{border-bottom:1px solid var(--line);padding:9px 2px}.notice{border-radius:10px;gap:12px;padding:12px 14px;font-size:.88rem;display:flex}.notice ul{margin:6px 0 0;padding-left:18px}.notice-warning{background:var(--warning-soft);color:#7a5413}.notice-success{background:var(--success-soft);color:var(--success)}.notice svg{flex:none;margin-top:1px}.danger-zone{background:#fdf7f6;border:1px solid #efd3ce;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding:16px 18px;display:flex}.temp-password{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 30%, var(--surface));color:var(--accent-ink);border-radius:12px;gap:12px;padding:14px 16px;display:flex}.temp-password>svg{flex:none;margin-top:2px}.temp-password-body{flex-direction:column;gap:8px;min-width:0;display:flex}.temp-password-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.temp-password code{letter-spacing:.06em;background:var(--surface);color:var(--ink);-webkit-user-select:all;user-select:all;border-radius:8px;padding:6px 12px;font-size:1.15rem;font-weight:600}.tabs{background:var(--chip);border-radius:11px;flex-wrap:wrap;gap:2px;margin-bottom:20px;padding:3px;display:inline-flex}.toolbar .tabs{margin-bottom:0}.tab{color:var(--ink-2);background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:.9rem;font-weight:500;display:inline-flex}.tab:hover{color:var(--ink)}.tab.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(var(--shade), .12)}.segmented{border:1px solid var(--line-strong);border-radius:10px;flex:none;display:inline-flex;overflow:hidden}.segmented button{background:var(--surface);color:var(--muted);border:0;align-items:center;gap:5px;padding:7px 12px;font-size:.84rem;display:inline-flex}.segmented button+button{border-left:1px solid var(--line-strong)}.segmented button.on.present{background:var(--success-soft);color:var(--success);font-weight:600}.segmented button.on.absent{background:var(--danger-soft);color:var(--danger);font-weight:600}.segmented button.on.justified{background:var(--warning-soft);color:var(--warning);font-weight:600}.attendance-row{flex-wrap:wrap}.attendance-row.status-absent{background:snow}.attendance-extra{flex-basis:100%;gap:8px;display:flex}.attendance-extra input:first-child{flex:none;width:110px}.attendance-extra input:last-child{flex:1;min-width:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap;padding:11px 16px;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--line);padding:11px 16px}tr:last-child td{border-bottom:0}tr.clickable:hover td{background:var(--surface-2)}tr.selected td{background:var(--accent-soft)}.num{text-align:right;font-variant-numeric:tabular-nums}.preview-table{border:1px solid var(--line);border-radius:10px;max-height:45vh;overflow:auto}.preview-table th{position:sticky;top:0}.pauta th{vertical-align:bottom}.pauta .sticky-col{background:var(--surface);z-index:1;min-width:180px;position:sticky;left:0}.pauta th.sticky-col{background:var(--surface-2)}.th-link{color:var(--ink);text-transform:none;letter-spacing:0;flex-direction:column;align-items:flex-end;font-size:.86rem;display:flex}.th-link:hover{color:var(--accent-ink);text-decoration:underline}.th-sub{color:var(--muted);font-size:.72rem;font-weight:400}.grade.pass{color:var(--success)}.grade.fail{color:var(--danger)}.grade.strong{font-weight:700}.grade-pill{text-align:center;min-width:54px;font-family:var(--serif);background:var(--chip);border-radius:10px;flex:none;padding:2px 10px;font-size:1.35rem;font-weight:600}.grade-pill.pass{background:var(--success-soft);color:var(--success)}.grade-pill.fail{background:var(--danger-soft);color:var(--danger)}.average{align-items:baseline;gap:6px;display:flex}.average-value{font-family:var(--serif);font-size:1.8rem;font-weight:600}.grade-row input.grade-input{text-align:center;flex:none;width:84px;font-weight:600}.grade-input.pass{color:var(--success)}.grade-input.fail{color:var(--danger)}.grade-input.invalid{border-color:var(--danger);background:var(--danger-soft)}.grade-row .grow{flex:1.3;min-width:0}.doc-icon{background:var(--chip);width:38px;height:38px;color:var(--ink-2);border-radius:10px;flex:none;place-items:center;display:grid}.doc-pdf{color:#b24a3e;background:#f8e6e3}.doc-ppt{color:#c2622d;background:#fbeadb}.week-nav{align-items:center;gap:6px;display:flex}.week-label{font-family:var(--serif);text-align:center;min-width:210px;font-size:1.2rem;font-weight:600}.week{grid-template-columns:repeat(var(--days), minmax(0, 1fr));display:grid}.week-day{border-right:1px solid var(--line);flex-direction:column;min-height:280px;display:flex}.week-day:last-child{border-right:0}.week-day-head{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:baseline;padding:10px 12px;display:flex}.week-day-head .wd{font-size:.85rem;font-weight:600}.week-day-head .dm{color:var(--muted);font-size:.8rem}.week-day.today .week-day-head{background:var(--accent-soft)}.week-day.today .week-day-head .wd{color:var(--accent-ink)}.week-day-body{flex-direction:column;flex:1;gap:8px;padding:10px;display:flex}.no-aulas{color:var(--muted);text-align:center;margin-top:18px;font-size:.8rem}.aula{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:9px;flex-direction:column;gap:3px;padding:9px 10px;font-size:.84rem;display:flex}.aula.clickable:hover{border-color:var(--line-strong);border-left-color:var(--accent-ink);box-shadow:var(--shadow)}.aula-time{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-size:.78rem;display:flex}.aula-title{font-weight:600;line-height:1.3}.aula-turma{color:var(--accent-ink);font-size:.76rem;font-weight:600}.aula-meta{color:var(--ink-2);flex-wrap:wrap;gap:4px 10px;font-size:.76rem;display:flex}.aula-meta span{align-items:center;gap:4px;display:inline-flex}.aula-actions{margin-top:5px}.aula-absent{border-left-color:var(--danger);background:snow}.aula-justified{border-left-color:var(--warning)}.aula-flag{color:var(--danger);font-size:.74rem;font-weight:600}.aula-justified .aula-flag{color:var(--warning)}.legend{align-items:center;gap:8px;display:flex}.legend-dot{border-radius:3px;width:10px;height:10px;margin-left:10px;display:inline-block}.legend-dot:first-child{margin-left:0}.legend-dot.absent{background:var(--danger)}.legend-dot.justified{background:var(--warning)}.state{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:48px 20px;display:flex}.state-error{color:var(--danger)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:40px 20px;display:flex}.empty-icon{background:var(--accent-soft);width:54px;height:54px;color:var(--accent-ink);border-radius:50%;place-items:center;margin-bottom:6px;display:grid}.empty-title{font-family:var(--serif);font-size:1.3rem;font-weight:600}.empty .muted{max-width:420px}.fullscreen{place-items:center;min-height:100vh;display:grid}.modal-backdrop{background:rgba(var(--shade), .5);z-index:50;justify-content:center;align-items:flex-start;padding:6vh 16px;animation:.15s ease-out fade;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);box-shadow:var(--shadow-lg);border-radius:16px;width:100%;max-width:540px;animation:.18s ease-out rise}.modal-wide{max-width:820px}.modal-head{justify-content:space-between;align-items:center;padding:18px 20px 0 24px;display:flex}.modal-body{padding:18px 24px 24px}.modal-foot{border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 16px 16px;justify-content:flex-end;gap:10px;padding:14px 24px;display:flex}.modal .danger-zone{margin:0 24px 24px}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.toasts{z-index:60;flex-direction:column;gap:10px;max-width:calc(100vw - 40px);display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--espresso);color:#fff;box-shadow:var(--shadow-lg);border-radius:12px;align-items:center;gap:10px;max-width:420px;padding:12px 10px 12px 16px;font-size:.9rem;animation:.2s ease-out rise;display:flex}.toast-success svg:first-child{color:#9fd3ad}.toast-error{background:#7c2f27}.toast .icon-btn{color:#fff;width:28px;height:28px}.toast .icon-btn:hover{color:#fff;background:#ffffff1f}.auth-page{grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.auth-page.single{grid-template-columns:1fr}.auth-art{background:radial-gradient(circle at 25% 20%, color-mix(in srgb, var(--sand) 18%, transparent), transparent 55%), radial-gradient(circle at 80% 85%, color-mix(in srgb, var(--accent) 30%, transparent), transparent 50%), var(--espresso);color:var(--sand);place-items:center;padding:40px;display:grid}.auth-art-inner{text-align:center}.auth-art .brand{gap:26px}.auth-art .brand-mark{height:120px}.auth-art .brand-mark.monogram{--mono:120px}.auth-art .brand-rule{width:56px}.auth-art .brand-name{letter-spacing:.02em;max-width:14ch;font-weight:600;line-height:1.05}.auth-brand-mobile .brand-mark{height:56px}.auth-brand-mobile .brand-mark.monogram{--mono:56px}.auth-art .brand-name{font-size:clamp(2.2rem,4vw,3.2rem)}.auth-art .brand-sub{margin-top:10px;font-size:1.4rem}.auth-art p{text-transform:uppercase;letter-spacing:.3em;opacity:.7;margin-top:38px;font-size:.8rem}.auth-panel{place-items:center;padding:40px 24px;display:grid}.auth-form{flex-direction:column;gap:16px;width:100%;max-width:380px;display:flex}.auth-form h1{font-size:2.2rem}.auth-brand-mobile{color:var(--espresso);margin-bottom:16px;display:none}.auth-page.single .auth-brand-mobile{display:block}@media (width<=1100px){.content{padding:28px 28px 56px}.grid-2,.grid-wide-right,.grid-wide-left{grid-template-columns:1fr}}@media (width<=860px){.topbar{z-index:20;background:var(--espresso);color:var(--sand);align-items:center;gap:10px;padding:10px 14px;display:flex;position:sticky;top:0}.topbar .icon-btn{color:var(--sand)}.topbar .brand{flex-direction:row;align-items:center;gap:10px}.topbar .brand-mark{height:28px}.topbar .brand-mark.monogram{--mono:28px}.topbar .brand-mark-chip.on-dark{border-radius:7px;padding:3px 6px}.topbar .brand-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.topbar .brand,.topbar .brand-text{min-width:0}.topbar .brand-text{flex-direction:row;align-items:baseline;gap:8px}.topbar .brand-name{font-size:1.2rem}.topbar .brand-sub{display:none}.sidebar{width:min(300px,86vw);box-shadow:var(--shadow-lg);transition:transform .22s;transform:translate(-100%)}.sidebar.open{transform:none}.sidebar .sidebar-close{display:inline-grid}.sidebar-backdrop{background:rgba(var(--shade), .5);z-index:25;display:block;position:fixed;inset:0}.content{margin-left:0;padding:22px 16px 48px}h1{font-size:1.8rem}.auth-page{grid-template-columns:1fr}.auth-art{display:none}.auth-brand-mobile{display:block}.week{grid-template-columns:1fr}.week-day{border-right:0;border-bottom:1px solid var(--line);min-height:0}.week-day.empty-day .week-day-body{display:none}.week-day.empty-day .week-day-head:after{content:"Sem aulas";color:var(--muted);font-size:.78rem}.week-day.empty-day .week-day-head .dm{margin-left:auto;margin-right:10px}.week-label{min-width:0;font-size:1.05rem}}@media (width<=600px){.row-2,.row-3{grid-template-columns:1fr}.hide-sm{display:none!important}.page-header{align-items:flex-start}.card{padding:18px 16px}.card-flush{padding:0}.list-padded .list-row{padding:12px 16px}.card-flush>.card-head{flex-wrap:wrap;padding:14px 16px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stats>:last-child:nth-child(odd){grid-column:span 2}.stats>:last-child:nth-child(odd) .stat{flex-direction:row;align-items:center}.stat{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.stat-value{font-size:1.7rem}.grade-row{flex-wrap:wrap}.grade-row .list-main{flex-basis:calc(100% - 100px)}.grade-row .grow{flex-basis:100%}.doc-row-admin{flex-wrap:wrap;row-gap:4px}.doc-row-admin .list-main{flex-basis:calc(100% - 60px)}.doc-row-admin .row-actions{flex-basis:100%;justify-content:flex-end}.attendance-row .segmented{width:100%}.attendance-row .segmented button{flex:1;justify-content:center}.search-box{max-width:none}.filters select{flex:1}.danger-zone{flex-direction:column;align-items:flex-start}.modal-backdrop{align-items:flex-end;padding:0}.modal{border-radius:16px 16px 0 0;max-height:92vh;overflow-y:auto}.modal-body{padding:16px}.modal-head{padding:16px 12px 0 16px}.modal-foot{border-radius:0;padding:12px 16px;position:sticky;bottom:0}.toasts{max-width:none;bottom:16px;left:16px;right:16px}.toast{max-width:none}.hero-card{padding:20px}.hero-card h2{font-size:1.55rem}}.audience{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.audience-option{border:1.5px solid var(--line-strong);cursor:pointer;background:var(--surface);border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.audience-option input{opacity:0;pointer-events:none;position:absolute}.audience-option>svg{color:var(--muted);flex:none;margin-top:2px}.audience-option>span{flex-direction:column;gap:2px;min-width:0;display:flex}.audience-option strong{font-size:.9rem;font-weight:600}.audience-option:hover{border-color:var(--accent)}.audience-option.on{border-color:var(--espresso);background:var(--accent-soft)}.audience-option.on>svg{color:var(--accent-ink)}.audience-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}@media (width<=600px){.audience{grid-template-columns:1fr}}.pptx-viewer{z-index:70;color:#ecebf0;background:#151419;flex-direction:column;animation:.15s ease-out fade;display:flex;position:fixed;inset:0;overflow:hidden}.pptx-bar{background:#1e1d24;border-bottom:1px solid #2f2e36;align-items:center;gap:12px;padding:10px 14px 10px 20px;display:flex}.pptx-title{font-family:var(--serif);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:1.2rem;font-weight:600;overflow:hidden}.pptx-count{font-variant-numeric:tabular-nums;color:#b4b2bd;flex:none;font-size:.88rem}.pptx-bar .icon-btn{color:#ecebf0}.pptx-bar .icon-btn:hover{color:#fff;background:#2f2e36}.pptx-stage{touch-action:pan-y;flex:1;margin:20px 72px;position:relative}.pptx-viewer.is-fullscreen .pptx-bar{z-index:2;opacity:0;transition:opacity .2s;position:absolute;top:0;left:0;right:0}.pptx-viewer.is-fullscreen .pptx-bar:hover{opacity:1}.pptx-viewer.is-fullscreen{background:#000}.pptx-viewer.is-fullscreen .pptx-stage{margin:0}.pptx-canvas{transform-origin:50%;background:#fff;position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:0 10px 40px #00000073}.pptx-canvas [class*=pptx-preview-wrapper-pagination],.pptx-canvas [class*=pptx-preview-wrapper-next],.pptx-canvas [class*=pptx-preview-wrapper-pre]{display:none!important}.pptx-nav{color:#fff;z-index:1;background:#ffffff1f;border:0;border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pptx-nav:hover{background:#ffffff3d}.pptx-nav.prev{left:-64px}.pptx-nav.next{right:-64px}.pptx-viewer.is-fullscreen .pptx-nav{opacity:0;transition:opacity .2s}.pptx-viewer.is-fullscreen .pptx-stage:hover .pptx-nav{opacity:1}.pptx-viewer.is-fullscreen .pptx-nav.prev{left:16px}.pptx-viewer.is-fullscreen .pptx-nav.next{right:16px}.pptx-state{text-align:center;color:#cfcdd6;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex;position:absolute;inset:0}.pptx-progress{background:#2f2e36;height:3px}.pptx-progress span{background:var(--sand);height:100%;transition:width .2s;display:block}.pdf-stage{-webkit-user-select:none;user-select:none;flex-direction:column;flex:1;gap:16px;padding:20px 16px 40px;display:flex;position:relative;overflow:auto}.pdf-page{background:#fff;flex:none;margin:0 auto;box-shadow:0 10px 40px #00000073}.pdf-page canvas{display:block}.pptx-bar .icon-btn:disabled{opacity:.35}@media print{.pptx-viewer{display:none!important}}@media (width<=700px){.pptx-stage{margin:12px 8px 64px}.pptx-nav{width:46px;height:46px;top:auto;bottom:-58px;transform:none}.pptx-nav.prev{left:calc(50% - 56px)}.pptx-nav.next{right:calc(50% - 56px)}}.firefly,.firefly svg{width:100%;height:100%;display:block}.pirilampa-icon{vertical-align:middle;background:#1b1a33;border-radius:22%;flex:none;place-items:center;display:inline-grid;overflow:hidden}.pirilampa-icon .firefly{width:86%;height:86%}.powered-by{letter-spacing:.02em;color:var(--muted);justify-content:center;align-items:center;gap:6px;padding:8px 0 2px;font-size:.74rem;display:flex}.powered-by strong{font-weight:600}.sidebar .powered-by{color:var(--side-muted);border-top:1px solid var(--side-line);margin-top:6px;padding-top:10px}.mascot{width:84px;height:84px;margin-bottom:4px}.mascot .firefly{width:100%;height:100%}@media (prefers-reduced-motion:no-preference){.mascot .firefly{animation:4s ease-in-out infinite firefly-float}}@keyframes firefly-float{50%{transform:translateY(-5px)}}.auth-panel{grid-template-rows:1fr auto}.auth-panel>.powered-by{align-self:end;padding-bottom:4px}.tile-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.page-header h1 .badge{vertical-align:middle;font-family:var(--sans);margin-left:6px;font-size:.72rem}.notice-info{background:var(--accent-soft);color:var(--accent-ink);margin-bottom:16px}.problems{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.tab-intro{max-width:760px;margin:-6px 0 16px}.form-section{border-top:1px solid var(--line);margin-top:8px;padding-top:14px;font-size:1.15rem}.q-number{background:var(--espresso);width:30px;height:30px;color:var(--sand);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:600;display:grid}.q-number.sm{width:22px;height:22px;font-size:.72rem}.q-text{white-space:pre-wrap;flex:1;min-width:0;font-weight:500}.question-card{padding:18px 20px 12px}.question-card.readonly{padding-bottom:18px}.question-head{align-items:flex-start;gap:12px;display:flex}.question-head .q-text{padding-top:4px}textarea.q-input{flex:1;min-height:44px;font-weight:500}.option-edit{flex-direction:column;gap:8px;margin:14px 0 0 42px;padding:0;list-style:none;display:flex}.option-edit li{align-items:center;gap:8px;display:flex}.option-edit li input{flex:1;min-width:0}.option-edit li.is-correct input{background:#f6fbf7;border-color:#a9cdb2}.correct-toggle{border:1.5px solid var(--line-strong);background:var(--surface);color:#0000;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.correct-toggle:hover{border-color:var(--success);color:#a9cdb2}.correct-toggle[aria-pressed=true]{background:var(--success);border-color:var(--success);color:#fff}.question-foot{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:4px;margin:10px 0 0 42px;padding-top:8px;display:flex}.q-kind{margin-left:8px}.points{color:var(--muted);align-items:center;gap:6px;margin-right:6px;font-size:.85rem;display:inline-flex}.points input{text-align:center;width:70px;height:34px}.option-list{flex-direction:column;gap:6px;margin:12px 0 0 42px;padding:0;font-size:.92rem;list-style:none;display:flex}.option-list li{color:var(--ink-2);align-items:center;gap:8px;display:flex}.option-list li.is-correct{color:var(--success);font-weight:600}.option-list .dot{border:1.5px solid var(--line-strong);border-radius:50%;flex:none;width:14px;height:14px}.add-question{border:1.5px dashed var(--line-strong);border-radius:var(--radius);width:100%;color:var(--accent-ink);background:0 0;justify-content:center;align-items:center;gap:8px;margin-bottom:20px;padding:16px;font-weight:500;display:flex}.add-question:hover{border-color:var(--accent);background:var(--accent-soft)}.save-bar{z-index:5;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;bottom:16px}.save-bar.visible{box-shadow:var(--shadow-lg);border-color:var(--accent)}.save-bar .form-error{flex-basis:100%}.attempt-meta{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:14px;font-size:.88rem;display:flex}.q-stats{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.q-stats-head{align-items:center;gap:8px;margin-bottom:6px;font-size:.88rem;display:flex}.q-stats-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.bar{background:var(--chip);border-radius:99px;height:8px;overflow:hidden}.bar span{background:var(--success);border-radius:99px;height:100%;display:block}.bar span.low{background:var(--danger)}.card-head h2 svg{vertical-align:-3px;color:var(--accent-ink);margin-right:4px}.review{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.review-q{border:1px solid var(--line);border-left:4px solid var(--success);border-radius:12px;padding:14px 16px}.review-q.wrong{border-left-color:var(--danger)}.review-head{align-items:flex-start;gap:10px;display:flex}.review-head .q-number{width:26px;height:26px;font-size:.78rem}.review-head .q-text{padding-top:3px}.review-points{border-radius:99px;flex:none;align-items:center;gap:4px;padding:3px 9px;font-size:.8rem;font-weight:600;display:inline-flex}.review-points.ok{background:var(--success-soft);color:var(--success)}.review-points.wrong{background:var(--danger-soft);color:var(--danger)}.review-options{flex-direction:column;gap:6px;margin:10px 0 0 36px;padding:0;font-size:.92rem;list-style:none;display:flex}.review-options li{color:var(--ink-2);border-radius:8px;align-items:center;gap:8px;padding:6px 10px;display:flex}.review-options li.is-correct{background:var(--success-soft);color:var(--success);font-weight:600}.review-options li.is-wrong{background:var(--danger-soft);color:var(--danger)}.review-mark{flex:none;place-items:center;width:16px;display:grid}.review-tag{text-transform:uppercase;letter-spacing:.06em;opacity:.8;margin-left:auto;font-size:.72rem;font-weight:600}.quiz-list{padding:4px 0}.quiz-row{color:inherit;border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 20px;display:flex}.quiz-list li:last-child .quiz-row{border-bottom:0}.quiz-row:hover{background:var(--surface-2);color:inherit}.quiz-row-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent-ink);border-radius:12px;flex:none;place-items:center;display:grid}.quiz-row.state-open:not(.done) .quiz-row-icon{background:var(--espresso);color:var(--sand)}.quiz-row.done .quiz-row-icon{background:var(--success-soft);color:var(--success)}.quiz-row .muted svg{vertical-align:-2px}.quiz-intro{max-width:760px}.quiz-desc{white-space:pre-wrap;border-bottom:1px solid var(--line);margin-bottom:16px;padding-bottom:16px}.quiz-facts{flex-direction:column;gap:12px;margin:0 0 16px;padding:0;list-style:none;display:flex}.quiz-facts li{align-items:center;gap:12px;display:flex}.quiz-facts svg{color:var(--accent-ink);flex:none}.quiz-alert{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:14px;margin-bottom:20px;padding:16px 20px;display:flex}.quiz-alert>svg{color:var(--accent-ink);flex:none}.quiz-alert-item{font-size:.9rem;display:block}.runner-bar{z-index:15;background:var(--bg);flex-wrap:wrap;align-items:center;gap:14px;padding:14px 0 10px;display:flex;position:sticky;top:0}.runner-title{flex-direction:column;flex:1;min-width:160px;display:flex}.runner-title strong{font-family:var(--serif);font-size:1.4rem;font-weight:600;line-height:1.2}.save-state{color:var(--muted);align-items:center;gap:5px;font-size:.8rem;display:inline-flex}.save-state.saved{color:var(--success)}.save-state.error{color:var(--danger)}.timer{font-variant-numeric:tabular-nums;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;align-items:center;gap:6px;padding:6px 12px;font-size:1.05rem;font-weight:600;display:inline-flex}.timer.low{background:var(--warning-soft);color:var(--warning);border-color:#ecd3a6}.timer.critical{background:var(--danger);border-color:var(--danger);color:#fff;animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.75}}.progress{background:var(--line);border-radius:99px;height:4px;margin-bottom:20px;overflow:hidden}.progress span{background:var(--accent);height:100%;transition:width .25s;display:block}.runner{flex-direction:column;gap:16px;max-width:820px;margin:0;padding:0;list-style:none;display:flex}.runner-q{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;scroll-margin-top:110px}.runner-q.answered{border-color:var(--line-strong)}.runner-q .question-head>div{flex-direction:column;gap:4px;min-width:0;display:flex}.choices{flex-direction:column;gap:8px;margin:14px 0 0 42px;display:flex}.choice{text-align:left;border:1.5px solid var(--line-strong);background:var(--surface);border-radius:12px;align-items:center;gap:12px;padding:11px 14px;transition:border-color .12s,background .12s;display:flex}.choice:hover:not(:disabled){border-color:var(--accent)}.choice.on{border-color:var(--espresso);background:var(--accent-soft)}.choice-mark{border:1.5px solid var(--line-strong);width:26px;height:26px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:600;display:grid}.choice.multi .choice-mark{border-radius:7px}.choice.on .choice-mark{background:var(--espresso);border-color:var(--espresso);color:#fff}.runner-end{justify-content:flex-end;max-width:820px;margin:20px 0 40px;display:flex}.result-hero{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:26px 16px;display:flex}.result-hero>svg{color:var(--success)}.result-grade{font-family:var(--serif);font-variant-numeric:lining-nums;font-size:4.2rem;font-weight:600;line-height:1}@media (width<=860px){.runner-bar{top:52px}}@media (width<=600px){.option-edit,.question-foot,.option-list,.choices,.review-options{margin-left:0}.question-card{padding:16px 14px 10px}.runner-bar{gap:8px}.runner-title strong{font-size:1.15rem}.quiz-row{padding:12px 16px}.quiz-alert{flex-wrap:wrap}}.signature-pad{border:1.5px dashed var(--line-strong);background:var(--surface);touch-action:none;border-radius:12px;position:relative}.signature-pad canvas{cursor:crosshair;touch-action:none;border-radius:12px;width:100%;display:block}.signature-hint{pointer-events:none;color:var(--line-strong);font-family:var(--serif);place-items:center;font-size:1.5rem;font-style:italic;display:grid;position:absolute;inset:0}.signature-line{border-bottom:1px solid var(--line-strong);pointer-events:none;position:absolute;bottom:30%;left:24px;right:24px}.signature-clear{position:absolute;bottom:8px;right:8px}.signed-block{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.signed-block img{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:260px;max-height:90px;padding:6px}.sig-inline{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.sig-inline img{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:6px;max-width:110px;height:30px;padding:2px 4px}.signed-ok{color:var(--success);align-items:center;gap:6px;font-size:.86rem;font-weight:600;display:inline-flex}.sign-today{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--espresso);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:16px 20px}.sign-today-head{color:var(--accent-ink);align-items:center;gap:8px;margin-bottom:8px;display:flex}.sign-today ul{margin:0;padding:0;list-style:none}.sign-today li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.sign-today li:first-child{border-top:0}.sign-today .muted svg{vertical-align:-2px}.aula-flag.signed{color:var(--success)}.legend-dot.signed{background:var(--success)}.aula-detail{color:var(--ink-2);flex-direction:column;gap:6px;font-size:.92rem;display:flex}.aula-detail span{align-items:center;gap:8px;display:inline-flex}.aula-detail svg{color:var(--accent-ink)}.summary-text{white-space:pre-wrap;margin-top:4px}.checklist{margin:0;padding:0;list-style:none}.check-item{border-top:1px solid var(--line);align-items:flex-start;gap:10px;padding:10px 0;display:flex}.check-item:first-child{border-top:0}.check-item>svg{color:var(--line-strong);flex:none;margin-top:1px}.check-item.ok>svg{color:var(--success)}.check-item .missing{flex-wrap:wrap;gap:4px 10px;margin-top:4px;font-size:.8rem;display:flex}.survey-edit{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.survey-edit li{align-items:center;gap:8px;display:flex}.survey-edit li input{flex:1;min-width:0}.survey-edit li select{flex:none;width:170px}.survey-results{flex-direction:column;gap:18px;margin:0;padding:0;list-style:none;display:flex}.q-stats-text.wrap{white-space:normal}.distribution{align-items:flex-end;gap:10px;padding-left:30px;display:flex}.dist-col{flex-direction:column;align-items:center;gap:2px;width:44px;display:flex}.dist-bar{background:var(--chip);border-radius:6px;align-items:flex-end;width:26px;height:64px;display:flex;overflow:hidden}.dist-bar span{border-radius:6px 6px 0 0;width:100%;display:block}.dist-bar .v1{background:#c0584b}.dist-bar .v2{background:#d99a6c}.dist-bar .v3{background:var(--line-strong)}.dist-bar .v4{background:#86b393}.dist-bar .v5{background:#3f7a52}.dist-label{font-size:.78rem;font-weight:600}.dist-count{color:var(--muted);font-size:.72rem}.comments{flex-direction:column;gap:6px;margin:4px 0 0 30px;padding:0;list-style:none;display:flex}.comments li{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-size:.9rem}.scale{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0 0 42px;display:grid}.scale-option{border:1.5px solid var(--line-strong);background:var(--surface);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;display:flex}.scale-option:hover{border-color:var(--accent)}.scale-option.on{border-color:var(--espresso);background:var(--accent-soft)}.scale-value{font-family:var(--serif);font-variant-numeric:lining-nums;font-size:1.5rem;font-weight:600;line-height:1}.scale-label{color:var(--muted);text-align:center;font-size:.72rem;line-height:1.2}.survey-text{margin:12px 0 0 42px;width:calc(100% - 42px)!important}.survey-end{flex-wrap:wrap;align-items:center;gap:10px}.cert-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.text-warning{color:var(--warning)}.cert-tile{position:relative}.cert-icon{color:var(--accent-ink);margin-bottom:8px}.cert-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.more-fields{border:1px solid var(--line);border-radius:12px;padding:10px 14px}.more-fields summary{cursor:pointer;color:var(--ink-2);font-size:.88rem;font-weight:600}.more-fields[open] summary{margin-bottom:12px}.logo-field{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.logo-field img{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:8px;max-width:180px;max-height:64px;padding:4px}.narrow-wide{max-width:820px}.auth-form.verify{max-width:520px}.verify-form{gap:8px;display:flex}.verify-form input{text-transform:uppercase;letter-spacing:.08em;flex:1}.verify-result{border:1px solid;border-radius:14px;gap:14px;padding:16px 18px;display:flex}.verify-result.valid{background:var(--success-soft);color:var(--success);border-color:#bcd9c4}.verify-result.invalid{background:var(--danger-soft);color:var(--danger);border-color:#efc6bf}.verify-result>svg{flex:none}.verify-result dl{color:var(--ink);grid-template-columns:auto 1fr;gap:4px 14px;margin:10px 0 0;font-size:.9rem;display:grid}.verify-result dt{color:var(--muted)}.verify-result dd{margin:0}@media (width<=600px){.scale{gap:6px;margin-left:0}.scale-label{display:none}.survey-text{margin-left:0;width:100%!important}.distribution{padding-left:0}.comments{margin-left:0}.survey-edit li{flex-wrap:wrap}.survey-edit li select{width:100%}}.cert-notice{margin:14px 20px 0}.cert-signature{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 20px 0;display:flex}.cert-signature img{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:6px;max-width:160px;height:40px;padding:3px 6px}.sigo-steps{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px 20px;display:grid}.sigo-step{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;flex-direction:column;gap:8px;padding:14px;display:flex}.sigo-step>div strong{font-size:.92rem}.sigo-step .btn{align-self:flex-start;margin-top:auto}.official{flex-direction:column;gap:1px;display:flex}.official-tile{border-color:#bcd9c4}.official-tile .cert-icon{color:var(--success)}.official-label{text-transform:uppercase;letter-spacing:.08em;color:var(--success);margin-bottom:4px;font-size:.72rem;font-weight:600;display:block}@media (width<=860px){.sigo-steps{grid-template-columns:1fr}}.card-intro{padding:12px 20px 0}.trainer-row .trainer-sig{border:1px solid var(--line);background:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:120px;height:44px;display:flex}.trainer-sig img{object-fit:contain;max-width:110px;max-height:38px}.signer-pick{align-items:center;gap:8px;display:inline-flex}.signer-pick select{width:auto;height:34px}.saved-signatures{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.saved-sig{border:1.5px solid var(--line-strong);background:#fff;border-radius:10px;align-items:center;gap:8px;padding:4px 10px 4px 4px;font-size:.85rem;display:inline-flex}.saved-sig:hover{border-color:var(--accent)}.saved-sig img{object-fit:contain;max-width:90px;height:30px}@media (width<=600px){.trainer-row{flex-wrap:wrap}}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:.72rem;font-weight:600}.brand-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start;gap:24px;display:grid}.brand-layout .form-actions{flex-wrap:wrap;justify-content:flex-start}.brand-preview-col{flex-direction:column;gap:10px;display:flex;position:sticky;top:24px}.logo-picker{align-items:center;gap:16px;display:flex}.logo-picker-preview{border:1px dashed var(--line-strong);background:var(--surface-2);border-radius:12px;flex:none;place-items:center;width:112px;height:72px;padding:8px;display:grid;overflow:hidden}.logo-picker-preview.dark{background:var(--espresso);border-style:solid;border-color:var(--espresso)}.logo-picker-preview.dark .muted{color:var(--side-muted)}.logo-picker-preview img{object-fit:contain;max-width:100%;max-height:100%;display:block}.logo-picker-body{flex-direction:column;gap:4px;min-width:0;display:flex}.logo-picker-body .row-actions{flex-wrap:wrap;margin-top:6px}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 5px;font-size:.86rem;transition:border-color .15s;display:inline-flex}.swatch:hover{border-color:var(--ink-2)}.swatch i{background:var(--c);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;box-shadow:inset 0 0 0 1px #00000014}.swatch i svg{filter:drop-shadow(0 0 1px #0009)}.swatch.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.custom-color{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.custom-color input[type=color]{cursor:pointer;background:0 0;border:0;border-radius:50%;width:26px;height:26px;padding:0}.custom-color input[type=color]::-webkit-color-swatch-wrapper{padding:0}.custom-color input[type=color]::-webkit-color-swatch{border:0;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001f}.custom-color input[type=color]::-moz-color-swatch{border:0;border-radius:50%}.hex-input{text-transform:lowercase;width:110px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace}.contrast-checks{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.contrast-checks li{background:var(--success-soft);color:var(--success);border-radius:10px;justify-content:space-between;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.contrast-checks li.bad{background:var(--danger-soft);color:var(--danger)}.contrast-checks b{font-variant-numeric:tabular-nums}.color-dot{vertical-align:-1px;border-radius:50%;width:10px;height:10px;display:inline-block}.brand-preview{color:var(--ink);flex-direction:column;gap:12px;font-size:13px;display:flex}.pv-row{grid-template-columns:.85fr 1.15fr;gap:12px;display:grid}.pv-sidebar,.pv-login-art{background:var(--espresso);color:var(--side-text);border-radius:14px;flex-direction:column;gap:14px;min-width:0;padding:16px 12px 10px;display:flex}.pv-brand,.pv-login-art{text-align:center;align-items:center}.pv-brand{color:var(--sand);flex-direction:column;gap:6px;display:flex}.pv-brand .brand-mark,.pv-login-art .brand-mark{--mono:34px;height:34px}.pv-brand .monogram,.pv-login-art .monogram{box-shadow:0 0 0 1.5px var(--accent-bright)}.pv-brand-name{font-family:var(--serif);overflow-wrap:anywhere;color:var(--sand);font-size:1.1rem;font-weight:600;line-height:1.1}.pv-brand-sub{font-family:var(--serif);opacity:.75;font-size:.8rem;font-style:italic}.pv-nav{flex-direction:column;gap:2px;display:flex}.pv-nav span{color:var(--side-text);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-weight:500;display:flex}.pv-nav span.on{background:var(--sand);color:var(--espresso)}.pv-sidebar .powered-by{color:var(--side-muted);border-top:1px solid var(--side-line);padding-top:8px;font-size:.7rem}.pv-page{background:var(--bg);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:6px;min-width:0;padding:14px;display:flex}.pv-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.pv-title{font-family:var(--serif);font-size:1.35rem;font-weight:600}.pv-text{color:var(--ink-2)}.pv-text a{color:var(--accent-ink);text-decoration:underline}.pv-buttons{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.pv-buttons .btn{pointer-events:none;height:30px}.pv-chip{align-items:center;gap:6px;display:flex}.pv-empty{border:1px dashed var(--line-strong);color:var(--muted);background:var(--surface);border-radius:10px;align-items:center;gap:8px;margin-top:4px;padding:8px;font-size:.78rem;display:flex}.pv-empty .firefly{flex:none;width:38px;height:38px}.pv-login{border:1px solid var(--line);border-radius:14px;grid-template-columns:1fr 1fr;min-width:0;display:grid;overflow:hidden}.pv-login-art{background:radial-gradient(circle at 25% 20%, color-mix(in srgb, var(--sand) 18%, transparent), transparent 55%), radial-gradient(circle at 80% 85%, color-mix(in srgb, var(--accent) 30%, transparent), transparent 50%), var(--espresso);border-radius:0;justify-content:center}.pv-login-form{background:var(--bg);flex-direction:column;gap:6px;min-width:0;padding:12px;display:flex}.pv-login-form>strong{font-family:var(--serif);font-size:1.1rem}.pv-field{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;height:22px}.pv-login-form .btn{pointer-events:none;height:26px;font-size:.78rem}.pv-login-form .powered-by{padding-top:2px;font-size:.66rem}.pv-cert{box-shadow:var(--shadow);border:1px solid var(--line);aspect-ratio:1.414;border-radius:6px;flex-direction:column;gap:2px;min-width:0;padding:18px 20px;display:flex;position:relative;overflow:hidden}.pv-cert-frame{border:1px solid var(--accent);pointer-events:none;position:absolute;inset:7px}.pv-cert-frame:before,.pv-cert-frame:after{content:"";border:2px solid var(--accent);width:14px;height:14px;position:absolute}.pv-cert-frame:before{border-bottom:0;border-right:0;top:2px;left:2px}.pv-cert-frame:after{border-top:0;border-left:0;bottom:2px;right:2px}.pv-cert-head{letter-spacing:.14em;color:var(--muted);align-items:center;gap:6px;font-size:.5rem;display:flex}.pv-cert-head .brand-mark{--mono:18px;height:18px}.pv-cert-head .brand-mark-chip{padding:0}.pv-cert-title{font-family:var(--serif);color:var(--accent-ink);margin-top:8px;font-size:1.7rem;font-style:italic;line-height:1}.pv-cert-kicker{letter-spacing:.3em;color:var(--accent-ink);font-size:.45rem}.pv-cert-name{font-family:var(--serif);margin-top:8px;font-size:.95rem;font-weight:600}.pv-cert-lines{flex-direction:column;gap:4px;margin-top:6px;display:flex}.pv-cert-lines i{background:var(--line-strong);border-radius:2px;width:85%;height:3px;display:block}.pv-cert-lines i:nth-child(2){width:70%}.pv-cert-lines i:nth-child(3){width:40%}.wizard-page{background:var(--bg);min-height:100vh;padding:32px 24px 64px}.wizard{flex-direction:column;gap:22px;max-width:1180px;margin:0 auto;display:flex}.wizard-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.wizard-hello{align-items:center;gap:16px;display:flex}.wizard-hello h1{font-size:2rem}.wizard-firefly{background:#1b1a33;border-radius:22%;flex:none;place-items:center;width:72px;height:72px;display:grid}.wizard-firefly .firefly{width:84%;height:84%}.wizard-steps{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.wizard-steps button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-weight:500;display:inline-flex}.wizard-dot{background:var(--chip);width:24px;height:24px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:.8rem;font-weight:600;display:grid}.wizard-steps .current button{border-color:var(--ink);color:var(--ink)}.wizard-steps .current .wizard-dot{background:var(--accent);color:var(--accent-on)}.wizard-steps .done .wizard-dot{background:var(--success);color:#fff}.wizard-body{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start;gap:24px;display:grid}.wizard-card{flex-direction:column;gap:20px;margin:0;display:flex}.wizard-card h2{font-size:1.6rem}.wizard-actions{border-top:1px solid var(--line);align-items:center;gap:10px;padding-top:16px;display:flex}.wizard-preview{position:sticky;top:24px}@media (width<=1100px){.brand-layout,.wizard-body{grid-template-columns:1fr}.brand-preview-col,.wizard-preview{position:static}}@media (width<=560px){.pv-row,.pv-login{grid-template-columns:1fr}.logo-picker{align-items:flex-start}.logo-picker-preview{width:84px;height:60px}.wizard-page{padding:20px 16px 48px}.wizard-hello h1{font-size:1.6rem}.wizard-firefly{width:56px;height:56px}}.palette-groups{flex-direction:column;gap:12px;display:flex}.palette-group{flex-direction:column;gap:6px;display:flex}.palette-group-name{color:var(--muted);font-size:.78rem;font-weight:600}.dots{flex-wrap:wrap;gap:8px;display:flex}.dot{background:var(--c);color:#fff;border:0;border-radius:50%;place-items:center;width:34px;height:34px;transition:transform .12s;display:grid;box-shadow:inset 0 0 0 1px #0000001a}.dot:hover{transform:scale(1.1)}.dot.on{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--ink)}.dot svg{filter:drop-shadow(0 0 1.5px #000000b3)}.first-access-firefly{width:64px;height:64px;margin-bottom:4px}.brand-mark.pirilampa-mark{aspect-ratio:1;background:#1b1a33;border-radius:22%;place-items:center;display:grid;box-shadow:0 0 0 1px #ffffff14}.brand-mark.pirilampa-mark .firefly{width:86%;height:86%}.brand-pirilampa .brand-name.lp-wordmark{font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:700}.brand-pirilampa .lp-dot{color:#f5b82e}.auth-art .brand-pirilampa .brand-name{font-size:clamp(2.6rem,5vw,4rem)}.brand-pirilampa .brand-sub{font-variation-settings:"SOFT" 100;font-family:Fraunces,Georgia,serif;font-style:normal}.landing{--lp-night:#1b1a33;--lp-night-2:#2b2950;--lp-amber:#f5b82e;--lp-cream:#f6f4f0;--lp-ink:#1f1d2b;--lp-muted:#5f5c6d;--lp-line:#e4e0d8;--display:"Fraunces", Georgia, serif;--brand:var(--lp-amber);--accent:#f5b82e;--accent-on:#16141c;--accent-hover:#f7c450;--accent-ink:#7d5600;--accent-soft:#fdf3dc;--bg:var(--lp-cream);--ink:var(--lp-ink);--muted:var(--lp-muted);--line:var(--lp-line);--line-strong:#d6d1c7;background:var(--lp-cream);min-height:100vh;color:var(--lp-ink)}.landing a{color:inherit}.lp-wordmark{font-family:var(--display);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;margin:0;font-style:italic;font-weight:700;line-height:1}.lp-wordmark.small{font-size:1.5rem}.lp-dot{color:var(--lp-amber)}.lp-nav{background:var(--lp-night);color:#fff;justify-content:space-between;align-items:center;gap:12px;padding:18px max(16px,5vw);display:flex}.lp-logo{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.lp-logo-icon{background:var(--lp-night-2);border-radius:22%;flex:none;place-items:center;width:40px;height:40px;display:grid}.lp-logo-icon .firefly{width:86%;height:86%}.lp-nav .lp-logo,.lp-nav .lp-logo:hover{color:#fff}.lp-nav-actions{gap:8px;display:flex}.lp-btn{white-space:nowrap;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;height:42px;padding:0 18px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.lp-btn-lg{height:52px;padding:0 26px;font-size:1.02rem}.lp-btn-primary,.landing a.lp-btn-primary{background:var(--lp-amber);color:#16141c}.lp-btn-primary:hover{color:#16141c;background:#f7c450;transform:translateY(-1px)}.lp-btn-ghost,.landing a.lp-btn-ghost{color:#fff;border-color:#ffffff59}.lp-btn-ghost:hover{color:#fff;background:#ffffff0f;border-color:#fff}.lp-hero{color:#fff;background:radial-gradient(circle at 70% 120%, var(--lp-night-2), var(--lp-night) 70%);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:32px;padding:56px max(16px,5vw) 88px;display:grid;position:relative;overflow:hidden}.lp-hero:before{content:"";pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12% 22%,#fff9 50%,#0000),radial-gradient(1px 1px at 80% 18%,#fff8 50%,#0000),radial-gradient(1.5px 1.5px at 66% 70%,#fff6 50%,#0000),radial-gradient(1px 1px at 26% 78%,#fff7 50%,#0000),radial-gradient(1px 1px at 90% 58%,#fff7 50%,#0000),radial-gradient(1.5px 1.5px at 45% 12%,#fff6 50%,#0000);position:absolute;inset:0}.lp-hero-text{flex-direction:column;gap:16px;display:flex;position:relative}.lp-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--lp-amber);margin:0;font-size:.78rem;font-weight:600}.lp-hero .lp-wordmark{color:#fff;font-size:clamp(3.4rem,9vw,6.4rem)}.lp-tagline{font-family:var(--display);font-variation-settings:"SOFT" 100;color:#fff;margin:0;font-size:clamp(1.3rem,2.6vw,1.8rem)}.lp-lead{color:#d6d4e6;max-width:54ch;margin:4px 0 0;font-size:1.05rem;line-height:1.6}.lp-cta{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.lp-hero-art{place-items:center;min-height:320px;display:grid;position:relative}.lp-glow{aspect-ratio:1;background:radial-gradient(circle,#f5b82e59,#0000 65%);border-radius:50%;width:70%;position:absolute}.lp-firefly{aspect-ratio:1;width:min(380px,80%);position:relative}@media (prefers-reduced-motion:no-preference){.lp-firefly{animation:4s ease-in-out infinite lp-float}.lp-glow{animation:2.6s ease-in-out infinite lp-pulse}}@keyframes lp-float{50%{transform:translateY(-12px)}}@keyframes lp-pulse{50%{opacity:.6;transform:scale(1.08)}}.lp-section{max-width:1240px;margin:0 auto;padding:72px max(16px,5vw)}.lp-section h2,.lp-final h2{font-family:var(--display);font-variation-settings:"SOFT" 100;color:var(--lp-ink);letter-spacing:-.01em;margin:0;font-size:clamp(1.9rem,4vw,2.6rem);font-weight:700}.lp-section-lead{color:var(--lp-muted);max-width:60ch;margin:10px 0 32px;font-size:1.05rem}.lp-features{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px;display:grid}.lp-feature{border:1px solid var(--lp-line);background:#fff;border-radius:18px;flex-direction:column;gap:8px;padding:22px;display:flex}.lp-feature h3{font-family:var(--sans);color:var(--lp-ink);letter-spacing:0;margin:4px 0 0;font-size:1.02rem;font-weight:600}.lp-feature p{color:var(--lp-muted);margin:0;font-size:.93rem;line-height:1.55}.lp-feature-icon{color:#7d5600;background:#fdf3dc;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.lp-brand{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;display:grid}.lp-brand-text{flex-direction:column;gap:14px;display:flex}.lp-brand-text p{color:var(--lp-muted);margin:0;font-size:1.05rem;line-height:1.6}.lp-swatches{grid-template-columns:repeat(6,1fr);gap:12px;display:grid}.lp-swatches i{aspect-ratio:1;border-radius:50%;display:block;box-shadow:inset 0 0 0 1px #00000014}.lp-final{background:var(--lp-night);color:#fff;text-align:center;flex-direction:column;align-items:center;gap:14px;padding:72px 16px;display:flex}.lp-final h2{color:#fff}.lp-final p{color:#d6d4e6;margin:0 0 8px;font-size:1.05rem}.lp-final-icon{width:84px;height:84px}.lp-footer{background:var(--lp-night);color:#a9a6bf;border-top:1px solid #ffffff14;justify-content:space-between;gap:12px;padding:20px max(16px,5vw);font-size:.88rem;display:flex}.lp-footer a{color:#d6d4e6}.lp-auth{flex-direction:column;align-items:center;gap:26px;padding:40px 16px 64px;display:flex}.lp-auth-logo{color:var(--lp-ink)}.lp-auth .lp-logo-icon{background:var(--lp-night)}.lp-auth-card{border:1px solid var(--lp-line);background:#fff;border-radius:20px;width:100%;max-width:440px;padding:30px;box-shadow:0 12px 40px #1b1a3314}.lp-auth-card h1{font-family:var(--display);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:2rem;font-weight:700}.lp-auth-switch{text-align:center}.lp-auth-switch a{color:#7d5600;font-weight:600}@media (width<=860px){.lp-hero{grid-template-columns:1fr;padding-top:36px;padding-bottom:56px}.lp-hero-art{order:-1;min-height:220px}.lp-firefly{width:min(240px,70%)}.lp-brand{grid-template-columns:1fr}}@media (width<=480px){.lp-nav .lp-wordmark.small{display:none}.lp-cta .lp-btn{width:100%}.lp-auth-card{padding:22px}}.slug-field{border:1px solid var(--line-strong);background:#fff;border-radius:10px;align-items:stretch;display:flex;overflow:hidden}.slug-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}.slug-field input{box-shadow:none;border:0;flex:1;min-width:0;font-family:ui-monospace,Cascadia Mono,Consolas,monospace}.slug-field input:focus{box-shadow:none}.slug-domain{background:var(--lp-cream);color:var(--lp-muted);border-left:1px solid var(--line-strong);white-space:nowrap;place-items:center;padding:0 12px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.9rem;display:grid}.slug-state{min-height:1.2em;color:var(--lp-muted);align-items:center;gap:4px;margin-top:4px;font-size:.82rem;display:inline-flex}.slug-state.ok{color:#2f6b42}.slug-state.bad{color:#a23b30}.lp-waiting{text-align:center;align-items:center}.lp-waiting h1{margin-top:6px}@media (width<=480px){.slug-domain{padding:0 8px;font-size:.78rem}}.rs-page{background:#fff;grid-template-columns:minmax(380px,5fr) 7fr;min-height:100vh;display:grid}.rs-aside{color:#fff;background:radial-gradient(circle at 20% 110%, #f5b82e38, transparent 45%), radial-gradient(circle at 90% -10%, var(--lp-night-2), transparent 55%), var(--lp-night);flex-direction:column;gap:32px;padding:36px clamp(28px,4vw,56px);display:flex;position:relative;overflow:hidden}.rs-aside:before{content:"";pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12% 22%,#fff9 50%,#0000),radial-gradient(1px 1px at 80% 18%,#fff8 50%,#0000),radial-gradient(1.5px 1.5px at 66% 64%,#fff5 50%,#0000),radial-gradient(1px 1px at 30% 82%,#fff7 50%,#0000),radial-gradient(1px 1px at 88% 48%,#fff7 50%,#0000),radial-gradient(1.5px 1.5px at 48% 10%,#fff6 50%,#0000);position:absolute;inset:0}.rs-aside>*{position:relative}.rs-logo,.rs-logo:hover{color:#fff;align-self:flex-start;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.rs-logo-icon{background:var(--lp-night-2);border-radius:22%;place-items:center;width:40px;height:40px;display:grid}.rs-logo-icon .firefly{width:86%;height:86%}.rs-aside-body{flex-direction:column;flex:1;justify-content:center;gap:22px;max-width:520px;display:flex}.rs-title{font-family:var(--display);font-variation-settings:"SOFT" 100;letter-spacing:-.015em;color:#fff;margin:0;font-size:clamp(2.4rem,4.2vw,3.6rem);font-style:italic;font-weight:700;line-height:1.02}.rs-lead{color:#d6d4e6;margin:0;font-size:1.08rem;line-height:1.6}.rs-points{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.rs-points li{color:#ecebf5;align-items:center;gap:12px;font-size:.98rem;display:flex}.rs-points svg{width:32px;height:32px;color:var(--lp-amber);background:#f5b82e24;border-radius:10px;flex:none;padding:7px}.rs-aside-foot{color:#8f8caa;font-size:.85rem;font-family:var(--display);font-variation-settings:"SOFT" 100;margin:0}.rs-preview{color:var(--lp-ink);background:#fff;border-radius:16px;margin-top:8px;transition:transform .3s;overflow:hidden;transform:rotate(-1.2deg);box-shadow:0 30px 60px #00000059,0 0 0 1px #ffffff14}.rs-preview:hover{transform:rotate(0)}.rs-preview-bar{background:#f1efeb;border-bottom:1px solid #e4e0d8;align-items:center;gap:12px;padding:10px 14px;display:flex}.rs-dots{gap:6px;display:flex}.rs-dots i{background:#d8d3ca;border-radius:50%;width:10px;height:10px}.rs-dots i:first-child{background:#f2786c}.rs-dots i:nth-child(2){background:#f5c04a}.rs-dots i:nth-child(3){background:#5cc283}.rs-url{color:#4b4858;white-space:nowrap;text-overflow:ellipsis;background:#fff;border-radius:8px;flex:1;align-items:center;gap:8px;min-width:0;padding:6px 10px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.8rem;display:flex;overflow:hidden}.rs-lock{background:#3f9a5a;border-radius:2px;flex:none;width:9px;height:8px;margin-top:3px;position:relative}.rs-lock:before{content:"";box-sizing:border-box;border:1.5px solid #3f9a5a;border-bottom:0;border-radius:4px 4px 0 0;width:6px;height:6px;position:absolute;top:-5px;left:1.5px}.rs-preview-body{grid-template-columns:1fr 1fr;min-height:150px;display:grid}.rs-preview-art{background:radial-gradient(circle at 70% 120%, var(--lp-night-2), var(--lp-night) 70%);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex}.rs-mono{background:var(--lp-amber);color:#16141c;border-radius:22%;place-items:center;width:46px;height:46px;font-family:Cormorant Garamond,Georgia,serif;font-size:1.25rem;font-weight:600;display:grid}.rs-preview-art strong{color:#fff;overflow-wrap:anywhere;font-family:Cormorant Garamond,Georgia,serif;font-size:1.05rem;font-weight:600;line-height:1.15}.rs-preview-form{flex-direction:column;justify-content:center;gap:8px;padding:16px;display:flex}.rs-preview-form b{font-family:Cormorant Garamond,Georgia,serif;font-size:1.05rem}.rs-preview-form span{border:1px solid #e4e0d8;border-radius:6px;height:18px}.rs-preview-form em{background:var(--lp-amber);border-radius:6px;place-items:center;height:22px;font-size:.7rem;font-style:normal;font-weight:600;display:grid}.rs-main{background:#fff;justify-content:center;align-items:center;padding:48px clamp(20px,5vw,72px);display:flex}.rs-main-inner{flex-direction:column;gap:28px;width:100%;max-width:520px;display:flex}.rs-steps{align-items:center;gap:12px;display:flex}.rs-steps span{width:28px;height:28px;color:var(--lp-muted);background:#efece6;border-radius:50%;justify-content:center;align-items:center;gap:10px;font-size:.82rem;font-weight:700;display:inline-flex;position:relative}.rs-steps span em{white-space:nowrap;color:var(--lp-muted);font-style:normal;font-weight:600;position:absolute;left:36px}.rs-steps span.current{background:var(--lp-night);color:#fff}.rs-steps span.current em{color:var(--lp-ink)}.rs-steps span.done{color:#fff;background:#3f9a5a}.rs-steps i{background:#e4e0d8;border-radius:2px;flex:none;width:120px;height:2px;margin:0 4px 0 112px}.rs-form{flex-direction:column;gap:20px;animation:.25s ease-out rs-in;display:flex}@keyframes rs-in{0%{opacity:0;transform:translateY(6px)}}.rs-form header{flex-direction:column;gap:8px;display:flex}.rs-form h2{font-family:var(--display);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;color:var(--lp-ink);margin:0;font-size:clamp(1.8rem,3vw,2.3rem);font-weight:700;line-height:1.1}.rs-form header p{margin:0;font-size:1rem;line-height:1.55}.rs-field{flex-direction:column;gap:7px;min-width:0;display:flex}.rs-field>span{color:var(--lp-ink);font-size:.88rem;font-weight:600}.rs-field small{color:var(--lp-muted);font-size:.82rem}.rs-field input,.rs-field .password-input input{background:#fff;border:1px solid #d6d1c7;border-radius:12px;height:50px;padding:0 14px;font-size:1rem}.rs-field input:focus{border-color:var(--lp-amber);outline:none;box-shadow:0 0 0 4px #f5b82e33}.rs-slug{border-color:#d6d1c7;border-radius:12px}.rs-field .rs-slug input{height:50px;box-shadow:none;border:0;border-radius:0;font-size:1rem}.rs-field .rs-slug input:focus{box-shadow:none}.rs-slug:focus-within{border-color:var(--lp-amber);box-shadow:0 0 0 4px #f5b82e33}.rs-slug .slug-domain{padding:0 16px;font-size:.95rem}.rs-slug.ok{border-color:#3f9a5a}.rs-slug.bad{border-color:#d0796c}.rs-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.rs-submit{border-radius:14px;width:100%;height:54px;font-size:1.02rem}.rs-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.rs-actions{gap:12px;margin-top:4px;display:flex}.rs-actions .rs-submit{flex:1}.rs-back{height:54px;color:var(--lp-ink);background:#fff;border:1px solid #d6d1c7;border-radius:14px;padding:0 20px}.rs-back:hover{border-color:var(--lp-ink)}.rs-switch{text-align:center;color:var(--lp-muted);margin:0;font-size:.92rem}.rs-switch a{color:#7d5600;font-weight:600}.rs-hint{background:var(--lp-cream);color:var(--lp-muted);border-radius:12px;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;font-size:.88rem;line-height:1.45;display:flex}.rs-hint svg{color:#7d5600;flex:none;margin-top:1px}.rs-waiting{flex-direction:column;gap:18px;animation:.25s ease-out rs-in;display:flex}.rs-waiting-icon{color:#7d5600;background:#fdf3dc;border-radius:18px;place-items:center;width:64px;height:64px;display:grid}.rs-waiting h2{font-family:var(--display);font-variation-settings:"SOFT" 100;color:var(--lp-ink);margin:0;font-size:2rem;font-weight:700}.rs-progress{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.rs-progress li{color:var(--lp-muted);align-items:center;gap:12px;font-size:.98rem;display:flex}.rs-progress li svg,.rs-progress .rs-dot{background:#efece6;border-radius:50%;flex:none;width:26px;height:26px;padding:5px}.rs-progress li.done{color:var(--lp-ink)}.rs-progress li.done svg{color:#fff;background:#3f9a5a}.rs-progress li.current{color:var(--lp-ink);font-weight:600}.rs-progress li.current svg{color:#7d5600;background:#fdf3dc}.rs-progress li b{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.88rem;font-weight:600}@media (width<=960px){.rs-page{grid-template-columns:1fr}.rs-aside{gap:18px;padding:22px 20px 26px}.rs-aside-body{gap:12px}.rs-title{font-size:2.1rem}.rs-lead{font-size:.98rem}.rs-points,.rs-preview,.rs-aside-foot{display:none}.rs-main{align-items:flex-start;padding:28px 20px 48px}}@media (width<=520px){.rs-row{grid-template-columns:1fr}.rs-steps i{width:40px;margin-left:104px}.rs-slug .slug-domain{padding:0 10px;font-size:.78rem}}.wz-page{background:#fff;grid-template-columns:minmax(420px,5fr) 7fr;min-height:100vh;display:grid}.wz-main{flex-direction:column;gap:28px;min-width:0;padding:32px clamp(24px,4vw,64px) 0;display:flex}.wz-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.wz-logo{font-family:var(--display);font-variation-settings:"SOFT" 100;color:var(--lp-ink);align-items:center;gap:10px;font-size:1.25rem;font-style:italic;font-weight:700;display:inline-flex}.wz-logo-icon{background:var(--lp-night);border-radius:22%;place-items:center;width:34px;height:34px;display:grid}.wz-logo-icon .firefly{width:86%;height:86%}.wz-skip{color:var(--lp-muted);background:0 0;border:0;padding:8px 4px;font-size:.92rem;font-weight:600}.wz-skip:hover{color:var(--lp-ink);text-decoration:underline}.wz-progress{flex-direction:column;gap:10px;width:100%;max-width:560px;display:flex}.wz-bars{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.wz-bars button{background:#ebe7df;border:0;border-radius:99px;height:6px;padding:0;transition:background .2s}.wz-bars button.done{background:var(--lp-night)}.wz-bars button.current{background:var(--lp-amber)}.wz-progress>span{color:var(--lp-muted);font-size:.85rem}.wz-progress b{color:var(--lp-ink)}.wz-form{flex-direction:column;flex:1;gap:22px;width:100%;max-width:560px;animation:.25s ease-out rs-in;display:flex}.wz-form header{flex-direction:column;gap:10px;display:flex}.wz-form h1{font-family:var(--display);font-variation-settings:"SOFT" 100;letter-spacing:-.015em;color:var(--lp-ink);margin:0;font-size:clamp(2rem,3.2vw,2.6rem);font-weight:700;line-height:1.08}.wz-form header p{color:var(--lp-muted);margin:0;font-size:1.02rem;line-height:1.55}.rs-field>span em{color:var(--lp-muted);font-style:normal;font-weight:400}.wz-logos{flex-direction:column;gap:14px;display:flex}.wz-logos .logo-picker{border:1px solid #ebe7df;border-radius:16px;padding:16px}.wz-form .palette-group-name{font-size:.8rem}.wz-form .dot{width:38px;height:38px}.wz-actions{background:linear-gradient(#fff0,#fff 25%);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding:18px 0 28px;display:flex;position:sticky;bottom:0}.wz-next{border-radius:14px;min-width:160px;height:54px}.wz-preview-pane{background:radial-gradient(circle at 80% 10%,#fdf3dc,#0000 45%),radial-gradient(circle at 10% 90%,#ece9f7,#0000 50%),#f6f4f0;justify-content:center;align-items:center;height:100vh;padding:40px clamp(24px,4vw,64px);display:flex;position:sticky;top:0}.wz-preview-inner{flex-direction:column;align-items:center;gap:18px;width:100%;max-width:760px;display:flex}.wz-tabs{background:#ffffffb3;border:1px solid #e4e0d8;border-radius:12px;gap:2px;padding:4px;display:inline-flex;box-shadow:0 1px 2px #1b1a330a}.wz-tabs button{color:var(--lp-muted);background:0 0;border:0;border-radius:9px;padding:8px 16px;font-size:.88rem;font-weight:600}.wz-tabs button.on{color:var(--lp-ink);background:#fff;box-shadow:0 1px 4px #1b1a331f}.wz-browser{background:#fff;border-radius:16px;width:100%;overflow:hidden;box-shadow:0 30px 70px #1b1a332e,0 0 0 1px #1b1a330f}.wz-preview-note{color:var(--lp-muted);text-align:center;margin:0;font-size:.88rem}.pv-large{gap:0;font-size:15px}.pv-large .pv-login{border:0;border-radius:0;grid-template-columns:1.05fr 1fr;min-height:400px}.pv-large .pv-login-art{gap:14px;padding:32px}.pv-large .pv-login-art .brand-mark,.pv-large .pv-brand .brand-mark{--mono:64px;height:64px}.pv-large .pv-login-art .pv-brand-name{font-size:1.9rem}.pv-large .pv-brand-sub{font-size:1rem}.pv-large .pv-login-form{justify-content:center;gap:12px;padding:36px 32px}.pv-large .pv-login-form>strong{font-size:1.7rem}.pv-large .pv-login-form small{color:var(--muted);font-size:.82rem;line-height:1.4}.pv-large .pv-field{border-radius:9px;height:38px}.pv-large .pv-login-form .btn{height:40px;font-size:.9rem}.pv-large .pv-app{grid-template-columns:220px 1fr;min-height:400px;display:grid}.pv-large .pv-sidebar{border-radius:0;gap:18px;padding:22px 14px 14px}.pv-large .pv-brand-name{font-size:1.3rem}.pv-large .pv-nav span{padding:9px 10px;font-size:.92rem}.pv-large .pv-sidebar .powered-by{margin-top:auto}.pv-large .pv-page{border:0;border-radius:0;gap:10px;padding:26px 28px}.pv-large .pv-title{font-size:1.9rem}.pv-large .pv-buttons .btn{height:36px}.pv-large .pv-cert{box-shadow:none;aspect-ratio:auto;border:0;border-radius:0;gap:4px;min-height:400px;padding:40px 48px}.pv-large .pv-cert-frame{inset:14px}.pv-large .pv-cert-frame:before,.pv-large .pv-cert-frame:after{width:26px;height:26px}.pv-large .pv-cert-head{gap:10px;font-size:.72rem}.pv-large .pv-cert-head .brand-mark{--mono:30px;height:30px}.pv-large .pv-cert-title{margin-top:18px;font-size:3.6rem}.pv-large .pv-cert-kicker{font-size:.7rem}.pv-large .pv-cert-name{margin-top:18px;font-size:1.6rem}.pv-large .pv-cert-lines i{height:5px}@media (width<=1100px){.wz-page{grid-template-columns:1fr}.wz-preview-pane{order:2;height:auto;padding:28px 16px 40px;position:static}.wz-main{padding:22px 20px 0}.wz-actions{padding-bottom:20px}}@media (width<=560px){.pv-large .pv-login,.pv-large .pv-app{grid-template-columns:1fr;min-height:0}.pv-large .pv-sidebar .pv-nav span:nth-child(n+4){display:none}.pv-large .pv-cert{min-height:0;padding:26px}.pv-large .pv-cert-title{font-size:2.4rem}.wz-next{flex:1;min-width:0}}.wz-bars{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.wz-models{grid-template-columns:1fr 1fr;gap:12px;display:grid}.wz-model{background:#fff;border:1px solid #e4e0d8;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:10px;transition:border-color .15s,box-shadow .15s;display:flex}.wz-model:hover{border-color:#c9c3b7}.wz-model.on{border-color:var(--lp-night);box-shadow:0 0 0 2px var(--lp-night)}.wz-model-thumb{pointer-events:none;display:block}.wz-model-thumb .ce-page-wrap{box-shadow:0 4px 14px #1b1a331f}.wz-model-name{color:var(--lp-ink);align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:inline-flex}.wz-cert-big{justify-content:center;width:100%;display:flex}.wz-cert-big .ce-page-wrap{border-radius:4px;overflow:hidden;box-shadow:0 30px 70px #1b1a3333,0 0 0 1px #1b1a330f}.wz-editor{white-space:nowrap}.wz-actions{flex-wrap:wrap}.wz-actions .wz-editor{margin-left:auto}@media (width<=560px){.wz-models{grid-template-columns:1fr}.wz-model-thumb .ce-page-wrap{transform-origin:top;transform:scale(1.2)}}.ce{flex-direction:column;gap:16px;margin:-12px -16px 0;display:flex}.ce-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:0 16px;display:flex}.ce-title{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.ce-title h1{font-size:2rem}.ce-state{color:var(--muted);font-size:.82rem}.ce-state.dirty{color:var(--warning);font-weight:600}.ce-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ce-tools .ce-icon{width:40px;padding:0}.ce-sep{background:var(--line-strong);width:1px;height:26px;margin:0 2px}.ce-body{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:236px minmax(0,1fr) 280px;gap:0;min-height:calc(100vh - 170px);display:grid;overflow:hidden}.ce-left,.ce-right{background:var(--surface);max-height:calc(100vh - 170px);overflow-y:auto}.ce-left{border-right:1px solid var(--line)}.ce-right{border-left:1px solid var(--line)}.ce-section{border-bottom:1px solid var(--line);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.ce-section h3{font-family:var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0;font-size:.72rem;font-weight:600}.ce-section textarea{resize:vertical;min-height:84px;font-size:.88rem}.ce-section select,.ce-section textarea{width:100%}.ce-add{grid-template-columns:1fr 1fr;gap:6px;display:grid}.ce-add button{border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;font-size:.8rem;font-weight:500;transition:border-color .15s,background .15s;display:flex}.ce-add button:hover,.ce-add button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.ce-fields{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:2px;max-height:260px;padding:6px;display:flex;overflow-y:auto}.ce-fields p{margin:2px 6px 6px}.ce-fields button{text-align:left;color:var(--ink-2);background:0 0;border:0;border-radius:7px;padding:7px 8px;font-size:.82rem}.ce-fields button:hover{background:var(--accent-soft);color:var(--accent-ink)}.ce-bg-actions{flex-wrap:wrap;gap:6px;display:flex}.ce-layers{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.ce-layers button{width:100%;color:var(--ink-2);text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:6px 8px;font-size:.8rem;display:flex}.ce-layers button span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ce-layers button svg{color:var(--muted);flex:none}.ce-layers button:hover{background:var(--surface-2)}.ce-layers button.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.ce-colors{flex-wrap:wrap;gap:6px;display:flex}.ce-swatch{cursor:pointer;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;display:grid;position:relative;box-shadow:inset 0 0 0 1px #0000001f}.ce-swatch.on{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--ink)}.ce-swatch.none{color:var(--muted);background:repeating-linear-gradient(45deg,#fff 0 4px,#eee 4px 8px)}.ce-swatch.custom{background:conic-gradient(#f2786c,#f5c04a,#5cc283,#3f86e8,#9b7cf2,#e86a96,#f2786c);overflow:hidden}.ce-swatch.custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.ce-props-head{border-bottom:1px solid var(--line);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.ce-props-head h3{font-family:var(--sans);margin:0;font-size:1rem;font-weight:600}.ce-icon-row{gap:4px;display:flex}.ce-icon-row button{border:1px solid var(--line);background:var(--surface);width:34px;height:32px;color:var(--ink-2);border-radius:8px;place-items:center;display:grid}.ce-icon-row button:hover{border-color:var(--ink-2)}.ce-icon-row button.danger:hover{border-color:var(--danger);color:var(--danger)}.ce-row{grid-template-columns:1fr 1fr;align-items:end;gap:8px;display:grid}.ce-num{color:var(--muted);flex-direction:column;gap:4px;font-size:.74rem;display:flex}.ce-num input{height:34px;padding:0 8px;font-size:.86rem}.ce-toggles{gap:4px;display:flex}.ce-toggles button{border:1px solid var(--line-strong);background:var(--surface);width:34px;height:34px;color:var(--ink-2);border-radius:8px;place-items:center;display:grid}.ce-toggles button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.ce-toggles.wide select{flex:1;height:34px}.ce-range{color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:.78rem;display:grid}.ce-range b{color:var(--ink-2);text-align:right;min-width:36px;font-weight:600}.ce-note{border-bottom:1px solid var(--line);margin:0;padding:14px 16px}.ce-empty-props{color:var(--ink-2);padding:18px 16px;font-size:.88rem}.ce-empty-props ul{color:var(--muted);flex-direction:column;gap:6px;padding-left:18px;font-size:.82rem;display:flex}.ce-stage{background:radial-gradient(circle at 50% 0%, var(--surface-2), var(--bg));flex-direction:column;align-items:center;gap:12px;padding:24px;display:flex;overflow:auto}.ce-page-wrap{box-shadow:0 20px 60px rgba(var(--shade), .16), 0 0 0 1px rgba(var(--shade), .08);flex:none;position:relative}.ce-page{transform-origin:0 0;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0;overflow:hidden}.ce-bg{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ce-el{cursor:move;position:absolute}.ce-el:hover{outline-offset:1px;outline:1px dashed #3f86e8b3}.ce-el.sel{outline-offset:1px;outline:1.5px solid #3f86e8}.ce-el.clash{outline:2px dashed var(--danger);outline-offset:1px;background:color-mix(in srgb, var(--danger) 10%, transparent)}.ce-warn{background:color-mix(in srgb, var(--warning) 16%, var(--surface));color:var(--ink);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.ce-warn.on{background:color-mix(in srgb, var(--danger) 14%, var(--surface))}.ce-long.on{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent)}.ce-el.ce-t-line:before{content:"";position:absolute;inset:-8px}.ce-text{white-space:pre-wrap;overflow-wrap:anywhere;clip-path:inset(-2px);flex-direction:column;width:100%;height:100%;display:flex;overflow:visible}.ce-text strong{font-weight:700}.ce-img{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.ce-logo{width:100%;height:100%;position:relative}.ce-logo>.ce-img{position:absolute;inset:0}.ce-qr{place-items:center;width:100%;height:100%;display:grid}.ce-qr svg{aspect-ratio:1;width:auto;max-width:100%;height:100%}.ce-rect{box-sizing:border-box;width:100%;height:100%}.ce-line-svg{pointer-events:none;position:absolute;top:0;left:0}.ce-handle{z-index:2;background:#fff;border:1.5px solid #3f86e8;border-radius:3px;width:10px;height:10px;position:absolute}.ce-handle.h-nw{cursor:nwse-resize;top:-6px;left:-6px}.ce-handle.h-se{cursor:nwse-resize;bottom:-6px;right:-6px}.ce-handle.h-ne{cursor:nesw-resize;top:-6px;right:-6px}.ce-handle.h-sw{cursor:nesw-resize;bottom:-6px;left:-6px}.ce-handle.h-n{cursor:ns-resize;top:-6px;left:calc(50% - 5px)}.ce-handle.h-s{cursor:ns-resize;bottom:-6px;left:calc(50% - 5px)}.ce-handle.h-e{cursor:ew-resize;top:calc(50% - 5px);right:-6px}.ce-handle.h-w{cursor:ew-resize;top:calc(50% - 5px);left:-6px}.ce-el.ce-t-line>.ce-handle{cursor:crosshair}.ce-handle.round{border-radius:50%;width:12px;height:12px}.ce-guide{pointer-events:none;z-index:3;background:#e8467c;position:absolute}.ce-guide.v{width:1px;top:0;bottom:0}.ce-guide.h{height:1px;left:0;right:0}.ce-hint{text-align:center;max-width:640px}.ce-models{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:12px;display:grid}.ce-model{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:12px;font-weight:600;display:flex}.ce-model:hover{border-color:var(--accent);background:var(--accent-soft)}.ce-model-thumb{pointer-events:none}.ce-model-thumb .ce-page-wrap{box-shadow:0 6px 20px rgba(var(--shade), .14)}@media (width<=1280px){.ce-body{grid-template-columns:210px minmax(0,1fr) 250px}}@media (width<=1000px){.ce-body{grid-template-columns:1fr}.ce-left,.ce-right{border:0;border-top:1px solid var(--line);max-height:none}.ce-stage{order:-1}.ce-models{grid-template-columns:1fr}}
