:root{color-scheme:dark;--bg:#0b1120;--bg-soft:#111827;--panel:rgba(15,23,42,0.86);--panel-strong:#0f172a;--border:rgba(148,163,184,0.18);--border-strong:rgba(148,163,184,0.28);--text:#e5eef8;--muted:#94a3b8;--muted-strong:#cbd5e1;--accent:#7dd3fc;--accent-strong:#38bdf8;--success:#86efac;--danger:#fca5a5;--shadow:0 20px 50px rgba(2,6,23,0.35);--radius-xl:32px;--radius-lg:24px;--radius-md:18px;--radius-sm:12px;--font-sans:"Segoe UI","Pretendard","Noto Sans KR",Arial,sans-serif;--font-serif:"Georgia","Iowan Old Style","Times New Roman",serif}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:radial-gradient(circle at top right,rgba(125,211,252,.08),transparent 30%),radial-gradient(circle at bottom left,rgba(148,163,184,.08),transparent 30%),linear-gradient(135deg,#0b1120,#111827 55%,#1e293b);color:var(--text);font-family:var(--font-sans)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button:disabled,input:disabled,textarea:disabled{cursor:not-allowed;opacity:.72}textarea{resize:vertical}.page-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:24px 0 56px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 0 28px}.brand{display:flex;flex-direction:column;gap:4px}.brand-title{font-size:1.8rem;font-weight:700;letter-spacing:.02em}.brand-subtitle{color:var(--muted);font-size:.95rem}.nav-actions{display:flex;flex-wrap:wrap;gap:10px}.button,.danger-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border-strong);padding:10px 16px;transition:.16s ease;cursor:pointer}.button{background:rgba(226,232,240,.08);color:var(--text)}.button:hover,.danger-button:hover,.ghost-button:hover{transform:translateY(-1px);border-color:rgba(148,163,184,.42)}.button[aria-busy=true],.danger-button[aria-busy=true],.ghost-button[aria-busy=true]{transform:none}.ghost-button{background:transparent;color:var(--muted-strong)}.danger-button{background:rgba(127,29,29,.28);color:#fecaca}.card,.hero-panel,.panel{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hero-panel{border-radius:var(--radius-xl);padding:40px}.hero-grid{display:grid;grid-template-columns:1.3fr .8fr;grid-gap:26px;gap:26px;align-items:stretch}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--border-strong);color:var(--muted-strong);background:rgba(226,232,240,.05);font-size:.9rem}.hero-title{font-family:var(--font-serif);font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.12;margin:18px 0 16px;max-width:14ch}.hero-copy{color:var(--muted);font-size:1.08rem;line-height:1.75;max-width:58ch}.home-hero{gap:20px;padding:28px 32px}.home-hero .eyebrow{padding:6px 12px;font-size:.82rem}.home-hero .hero-title{font-size:clamp(1.75rem,2.6vw,2.55rem);margin:12px 0 10px;max-width:18ch}.home-hero .hero-copy{margin:0;font-size:.98rem;line-height:1.6;max-width:62ch}.home-hero .current-time-card{padding:20px}.home-hero .current-time-value{margin-top:16px;font-size:2.45rem}.home-hero .current-time-date{margin-top:8px}.home-hero .current-time-card p{margin-top:12px;font-size:.92rem}.preserve-lines{white-space:pre-line}.hero-aside{display:flex;flex-direction:column;justify-content:center;gap:18px;min-height:100%}.empty-card,.stat-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:rgba(11,18,32,.76);padding:24px}.current-time-card{position:relative;overflow:hidden;border:1px solid rgba(125,211,252,.24);border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(2,6,23,.2) 42%),rgba(11,18,32,.82);box-shadow:0 20px 42px rgba(2,6,23,.28);padding:24px}.current-time-card:before{content:"";position:absolute;inset:0 18px auto;height:1px;background:linear-gradient(90deg,transparent,rgba(186,230,253,.72),transparent)}.current-time-card>*{position:relative;z-index:1}.current-time-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.current-time-zone{color:var(--muted);font-size:.82rem}.current-time-value{display:block;margin-top:22px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:3.1rem;font-weight:700;line-height:1}.current-time-date{margin-top:10px;color:var(--muted-strong);font-size:.98rem}.current-time-card p{margin:16px 0 0;color:var(--muted);line-height:1.55}.section{margin-top:28px}.section-title{margin:0 0 18px;font-size:1.2rem}.utility-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);grid-gap:18px;gap:18px;align-items:end;margin-bottom:18px}.utility-section-head .section-title{margin-bottom:6px}.utility-section-subtitle{margin:0;color:var(--muted);font-size:.92rem}.utility-search-wrap{position:relative}.utility-search-input{width:100%;border:1px solid var(--border-strong);border-radius:999px;background:rgba(2,6,23,.38);color:var(--text);outline:none;padding:13px 54px 13px 18px;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.utility-search-input:focus{border-color:rgba(125,211,252,.56);background:rgba(2,6,23,.54);box-shadow:0 0 0 4px rgba(14,165,233,.1)}.utility-search-input::placeholder{color:rgba(148,163,184,.82)}.utility-search-clear{position:absolute;top:50%;right:7px;transform:translateY(-50%);display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:999px;background:rgba(226,232,240,.08);color:var(--muted-strong);cursor:pointer;padding:0;line-height:1}.utility-search-clear:hover{border-color:rgba(148,163,184,.44);color:var(--text)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.admin-grid,.profile-grid,.stats-grid,.utility-grid{display:grid;grid-gap:18px;gap:18px}.utility-grid{grid-template-columns:repeat(auto-fit,minmax(238px,1fr))}.utility-category-stack{display:grid;grid-gap:30px;gap:30px}.utility-category-block{display:grid;grid-gap:14px;gap:14px}.utility-category-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;min-width:0}.utility-category-header h3{margin:0;font-size:1.12rem}.utility-category-kicker{margin-bottom:4px;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.utility-category-header span{flex:0 0 auto;border:1px solid rgba(125,211,252,.28);border-radius:999px;background:rgba(14,165,233,.1);color:#bae6fd;padding:7px 11px;font-size:.82rem;font-weight:700}.utility-category-block.is-game .utility-category-header span,.utility-category-block.is-game .utility-path{border-color:rgba(134,239,172,.28);background:rgba(34,197,94,.1);color:#bbf7d0}.profile-grid{grid-template-columns:320px 1fr}.about-layout{align-items:start}.about-photo-col{align-self:start}.about-photo-card{position:-webkit-sticky;position:sticky;top:24px}.about-copy-col{gap:18px}.about-flow-panel{overflow:hidden}.about-flow-copy{display:flow-root}.about-inline-photo{float:left;width:min(320px,42%);margin:2px 24px 12px 0}.admin-grid{grid-template-columns:260px 1fr;align-items:start}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.card{border-radius:var(--radius-lg);padding:22px}.utility-card{position:relative;display:flex;min-width:0;overflow:hidden;flex-direction:column;isolation:isolate;padding:16px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.utility-card:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 18%,rgba(2,6,23,.72));opacity:0;pointer-events:none;transition:opacity .16s ease}.utility-card:focus-visible,.utility-card:hover{border-color:rgba(125,211,252,.42);background:rgba(15,23,42,.96);box-shadow:var(--shadow),0 0 0 4px rgba(14,165,233,.08);transform:translateY(-2px);outline:none}.utility-card:focus-visible:before,.utility-card:hover:before{opacity:1}.utility-card:focus-visible .utility-image,.utility-card:hover .utility-image{border-color:rgba(125,211,252,.42)}.card h3,.panel h2,.panel h3{margin-top:0}.muted{color:var(--muted)}.tag,.utility-path{display:inline-flex;padding:7px 12px;border-radius:999px;border:1px solid var(--border-strong);background:rgba(56,189,248,.12);color:#bae6fd;font-size:.83rem}.utility-card .utility-path{max-width:132px;overflow:hidden;align-self:start;justify-self:end;padding:5px 9px;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.tag.neutral{background:rgba(226,232,240,.06);color:var(--muted-strong)}.tag.success{background:rgba(34,197,94,.14);border-color:rgba(74,222,128,.34);color:#bbf7d0}.tag.accent{background:rgba(56,189,248,.14);border-color:rgba(125,211,252,.34);color:#bae6fd}.tag.danger{background:rgba(239,68,68,.14);border-color:rgba(252,165,165,.34);color:#fecaca}.utility-description{min-height:0;line-height:1.5;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.utility-description-overlay{position:absolute;right:12px;bottom:12px;left:12px;z-index:2;max-height:min(72%,220px);overflow:auto;border:1px solid rgba(226,232,240,.2);border-radius:var(--radius-sm);background:rgba(15,23,42,.96);box-shadow:0 18px 34px rgba(2,6,23,.36);color:var(--muted-strong);font-size:.9rem;line-height:1.55;opacity:0;padding:12px;pointer-events:none;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease}.utility-card:focus-visible .utility-description-overlay,.utility-card:hover .utility-description-overlay{opacity:1;pointer-events:auto;transform:translateY(0)}.utility-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(64px,auto);align-items:start;grid-gap:10px;gap:10px;min-width:0}.card h3{margin:0;font-size:1.5rem}.utility-card h3{overflow:hidden;font-size:1.08rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.utility-detail{margin-top:12px;display:grid;grid-gap:10px;gap:10px;align-items:start}.utility-detail.has-image{grid-template-columns:1fr}.utility-image{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);background:rgba(2,6,23,.3)}.panel{border-radius:var(--radius-xl);padding:28px}.stack{gap:16px}.field,.stack{display:flex;flex-direction:column}.field{gap:8px}.label{font-size:.92rem;color:var(--muted-strong)}.file-input,.input,.textarea{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:rgba(2,6,23,.4)}.file-drop-zone,.file-input,.input,.textarea{width:100%;color:var(--text);padding:12px 14px}.file-drop-zone{position:relative;display:grid;align-content:center;justify-items:start;grid-gap:5px;gap:5px;min-height:74px;overflow:hidden;border:1px dashed rgba(125,211,252,.52);border-radius:var(--radius-sm);background:linear-gradient(135deg,rgba(14,165,233,.11),rgba(74,222,128,.07)),rgba(2,6,23,.32);cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.file-drop-zone.is-dragging,.file-drop-zone:focus-within,.file-drop-zone:hover{border-color:rgba(74,222,128,.72);background:linear-gradient(135deg,rgba(34,197,94,.16),rgba(14,165,233,.11)),rgba(2,6,23,.38);box-shadow:0 0 0 3px rgba(74,222,128,.08)}.file-drop-title{font-weight:760}.file-drop-hint{color:var(--muted-strong);font-size:.84rem;line-height:1.35}.file-drop-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.textarea{min-height:150px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.actions{display:flex;flex-wrap:wrap;gap:12px}.list{display:flex;flex-direction:column;gap:14px}.list-item{border:1px solid var(--border);border-radius:var(--radius-md);background:rgba(2,6,23,.24);padding:18px}.list-item-header{display:flex;justify-content:space-between;gap:16px;align-items:center}.list-item p{color:var(--muted);line-height:1.6}.admin-visualization-manager{display:grid;grid-gap:16px;gap:16px}.admin-profile-manager{display:grid;grid-gap:14px;gap:14px}.admin-profile-item,.admin-profile-section,.admin-visualization-create,.admin-visualization-item,.admin-visualization-minimap{border:1px solid var(--border);border-radius:var(--radius-md);background:rgba(2,6,23,.22)}.admin-compact-panel,.admin-profile-item,.admin-profile-section,.admin-visualization-create{padding:16px}.admin-compact-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.admin-compact-heading h3{margin:0 0 4px}.admin-compact-heading p{margin:0;font-size:.88rem}.compact-form{display:grid;grid-gap:12px;gap:12px}.admin-visualization-form-grid{grid-template-columns:minmax(180px,1.1fr) minmax(180px,1fr) minmax(130px,.58fr) minmax(96px,.42fr)}.admin-profile-copy-grid,.admin-profile-form-grid,.admin-profile-link-grid,.admin-visualization-form-grid{display:grid;grid-gap:10px;gap:10px;align-items:end}.admin-profile-copy-grid{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr)}.admin-profile-form-grid{grid-template-columns:minmax(180px,1.1fr) minmax(180px,1fr) minmax(112px,.5fr) minmax(112px,.5fr)}.admin-profile-link-grid{grid-template-columns:minmax(150px,.7fr) minmax(220px,1.2fr) minmax(110px,.4fr)}.admin-profile-photo-grid{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.admin-profile-list{display:grid;grid-gap:10px;gap:10px}.admin-profile-item h3,.admin-profile-section h3{margin-top:0}.admin-profile-copy-grid .field,.admin-profile-form-grid .field,.admin-profile-link-grid .field,.admin-visualization-form-grid .field{gap:5px}.admin-profile-copy-grid .label,.admin-profile-form-grid .label,.admin-profile-link-grid .label,.admin-visualization-form-grid .label{font-size:.82rem}.admin-profile-copy-grid .input,.admin-profile-copy-grid .textarea,.admin-profile-form-grid .input,.admin-profile-form-grid .textarea,.admin-profile-link-grid .input,.admin-visualization-form-grid .input,.admin-visualization-form-grid .textarea{padding:9px 10px}.admin-grid-span-3{grid-column:span 3}.admin-grid-span-full{grid-column:1/-1}.admin-profile-span-3{grid-column:span 3}.admin-profile-span-full{grid-column:1/-1}.admin-check-field{display:flex;min-height:38px;align-items:center;gap:8px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:rgba(2,6,23,.28);color:var(--muted-strong);font-size:.86rem;padding:0 10px}.admin-check-field input{margin:0}.admin-visualization-textarea{min-height:84px;line-height:1.45;resize:vertical}.admin-profile-textarea{min-height:78px;line-height:1.45;resize:vertical}.admin-form-actions{justify-content:flex-end}.admin-visualization-workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:14px;gap:14px;align-items:flex-start}.admin-sidebar-extension:empty{display:none}.admin-visualization-minimap{position:-webkit-sticky;position:sticky;top:16px;display:grid;grid-gap:10px;gap:10px;padding:12px}.admin-minimap-counts,.admin-minimap-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-minimap-counts span,.admin-minimap-header span{color:var(--muted-strong);font-size:.82rem}.admin-minimap-counts{align-items:stretch}.admin-minimap-counts span{flex:1 1;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(226,232,240,.04);padding:6px 8px;text-align:center}.admin-collapse-button{justify-content:center;min-height:34px;padding:7px 10px}.admin-minimap-nav{display:grid;grid-gap:6px;gap:6px;max-height:min(66vh,620px);overflow:auto;padding-right:2px}.admin-minimap-link{display:grid;grid-gap:3px;gap:3px;width:100%;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;padding:8px;text-align:left;transition:background .16s ease,border-color .16s ease}.admin-minimap-link.is-active,.admin-minimap-link:hover{border-color:rgba(125,211,252,.36);background:rgba(14,165,233,.1)}.admin-minimap-title{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.admin-minimap-url,.admin-visualization-meta{color:var(--muted);font-size:.82rem}.admin-visualization-list{display:grid;grid-gap:10px;gap:10px}.admin-visualization-item{scroll-margin-top:16px;overflow:hidden}.admin-visualization-summary{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;color:var(--text);cursor:pointer;padding:12px 14px;text-align:left}.admin-visualization-item.is-open .admin-visualization-summary{background:rgba(14,165,233,.08)}.admin-visualization-summary-main{display:grid;min-width:0;grid-gap:4px;gap:4px}.admin-visualization-title-row{display:flex;min-width:0;align-items:center;gap:8px}.admin-visualization-title-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-category-pill,.admin-muted-pill{display:inline-flex;flex:0 0 auto;align-items:center;border-radius:999px;border:1px solid var(--border);font-size:.72rem;font-weight:700;line-height:1;padding:4px 7px}.admin-category-pill.is-game{border-color:rgba(251,191,36,.36);background:rgba(251,191,36,.1);color:#fde68a}.admin-category-pill.is-utility{border-color:rgba(125,211,252,.36);background:rgba(14,165,233,.1);color:#bae6fd}.admin-muted-pill,.admin-summary-action{color:var(--muted-strong)}.admin-summary-action{flex:0 0 auto;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.82rem;padding:6px 9px}.admin-visualization-editor{display:grid;grid-gap:12px;gap:12px;border-top:1px solid var(--border);padding:14px}.admin-delete-form{display:flex;justify-content:flex-end}.project-item{display:grid;grid-template-columns:minmax(160px,240px) 1fr;grid-gap:18px;gap:18px;align-items:start}.project-screenshot{width:100%;aspect-ratio:16/10;max-height:180px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);background:rgba(2,6,23,.3)}.project-content{min-width:0}.project-years{margin-top:6px;color:var(--muted-strong);font-size:.92rem}.sidebar-nav{display:flex;flex-direction:column;gap:10px}.sidebar-link{border-radius:18px;border:1px solid transparent;padding:12px 14px;color:var(--muted-strong);background:rgba(255,255,255,.02)}.sidebar-link.active,.sidebar-link:hover{border-color:var(--border-strong);background:rgba(226,232,240,.06);color:var(--text)}.photo-frame{width:100%;aspect-ratio:4/5;border-radius:28px;border:1px solid var(--border);background:radial-gradient(circle at top,rgba(125,211,252,.18),transparent 40%),linear-gradient(180deg,rgba(17,24,39,.96),rgba(11,18,32,.82));display:flex;align-items:center;justify-content:center;overflow:hidden}.photo-frame img{width:100%;height:100%;object-fit:cover}.photo-placeholder{width:90px;height:90px;border-radius:999px;border:1px solid var(--border-strong);display:grid;place-items:center;color:var(--muted-strong);font-size:1.4rem}.link-list{display:flex;flex-wrap:wrap;gap:12px}.external-link{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--border-strong);background:rgba(226,232,240,.06);color:var(--muted-strong)}.notice{border-radius:var(--radius-md);border:1px solid rgba(125,211,252,.25);background:rgba(14,165,233,.08);color:#dbeafe;padding:14px 16px}.notice-error{border-color:rgba(248,113,113,.3);background:rgba(127,29,29,.18);color:#fecaca}.notice-success{border-color:rgba(74,222,128,.25);background:rgba(20,83,45,.22);color:#dcfce7}.loading-inline{border-radius:var(--radius-sm);border:1px solid rgba(148,163,184,.2);background:rgba(226,232,240,.05);color:var(--muted-strong);padding:12px 14px}.table{width:100%;border-collapse:collapse}.table-scroll{overflow-x:auto}.table td,.table th{padding:14px 10px;border-bottom:1px solid var(--border);text-align:left}.table th{color:var(--muted-strong);font-size:.92rem;font-weight:600}.tabs-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.tabs-header h3{margin:0}.segmented-control{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--border-strong);border-radius:999px;background:rgba(2,6,23,.3)}.segment{border:0;border-radius:999px;background:transparent;color:var(--muted-strong);cursor:pointer;padding:8px 14px}.segment.active{background:rgba(226,232,240,.12);color:var(--text)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px}.photo-tile{position:relative;display:block;aspect-ratio:1;overflow:hidden;border-radius:var(--radius-sm);border:1px solid var(--border);background:rgba(2,6,23,.35)}.photo-tile img{width:100%;height:100%;object-fit:cover;transition:transform .18s ease}.photo-tile:hover img{transform:scale(1.04)}.photo-tile span{position:absolute;inset:auto 0 0;overflow:hidden;padding:24px 9px 8px;background:linear-gradient(180deg,transparent,rgba(2,6,23,.78));color:var(--text);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.gallery-sentinel{color:var(--muted);font-size:.92rem;padding:18px 0 2px;text-align:center}.footer-note{margin-top:28px;color:var(--muted);font-size:.95rem}.diff-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.diff-textarea{min-height:220px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.diff-options{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted-strong)}.diff-options label{display:inline-flex;align-items:center;gap:8px}.diff-counts{display:flex;flex-wrap:wrap;gap:10px}.diff-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.diff-row,.diff-table-head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.diff-table-head{background:rgba(148,163,184,.08)}.diff-table-head>div{padding:12px 14px;font-weight:600;color:var(--muted-strong)}.diff-table-body .diff-row{border-top:1px solid var(--border)}.diff-cell{display:grid;grid-template-columns:44px 1fr;align-items:start;grid-gap:10px;gap:10px;padding:10px 12px}.diff-line-no{color:var(--muted);font-size:.86rem;text-align:right;padding-top:2px}.diff-text{margin:0;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.5}.diff-added .diff-cell{background:rgba(34,197,94,.14)}.diff-removed .diff-cell{background:rgba(248,113,113,.14)}.diff-modified .diff-cell{background:rgba(250,204,21,.12)}.diff-inline-added{background:rgba(34,197,94,.32);border-radius:4px}.diff-inline-removed{background:rgba(248,113,113,.3);border-radius:4px}.diff-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:12px;gap:12px}.diff-summary-card{border:1px solid var(--border);background:rgba(2,6,23,.26);border-radius:var(--radius-sm);padding:14px}.diff-summary-button{width:100%;text-align:left;color:var(--text);cursor:pointer}.diff-summary-button:hover{border-color:var(--border-strong);background:rgba(30,41,59,.4)}.diff-summary-text{margin:8px 0 0;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.45;color:var(--muted-strong)}.diff-summary-before{border-left:3px solid rgba(248,113,113,.7);padding-left:8px;background:rgba(127,29,29,.18)}.diff-summary-after{border-left:3px solid rgba(34,197,94,.75);padding-left:8px;background:rgba(20,83,45,.2)}.diff-history-list{display:grid;grid-gap:10px;gap:10px}.diff-history-item{display:flex;gap:10px;justify-content:space-between;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.26);padding:10px}.diff-history-main{flex:1 1;text-align:left;border:0;background:transparent;color:var(--text);display:grid;grid-gap:4px;gap:4px;cursor:pointer}@media (max-width:960px){.admin-grid,.hero-grid,.profile-grid{grid-template-columns:1fr}.card,.hero-panel,.panel{padding:22px}.admin-visualization-workspace{grid-template-columns:1fr}.admin-visualization-minimap{position:static}.admin-minimap-nav{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-height:230px}.admin-profile-copy-grid,.admin-profile-form-grid,.admin-profile-link-grid,.admin-profile-photo-grid,.admin-visualization-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid-span-3,.admin-profile-span-3{grid-column:1/-1}.diff-input-grid,.diff-row,.diff-table-head{grid-template-columns:1fr}}@media (max-width:640px){.page-shell{width:min(100% - 20px,1180px);padding-top:16px}.hero-title{font-size:2.5rem}.home-hero{padding:22px}.home-hero .hero-title{font-size:2rem}.home-hero .current-time-value{font-size:2.25rem}.current-time-value{font-size:2.6rem}.admin-profile-copy-grid,.admin-profile-form-grid,.admin-profile-link-grid,.admin-profile-photo-grid,.admin-visualization-form-grid,.form-row{grid-template-columns:1fr}.admin-grid-span-3,.admin-grid-span-full,.admin-profile-span-3,.admin-profile-span-full{grid-column:1}.admin-visualization-summary{align-items:flex-start}.admin-visualization-title-row{align-items:flex-start;flex-wrap:wrap}.list-item-header,.tabs-header,.topbar{flex-direction:column;align-items:flex-start}.segmented-control{width:100%}.segment{flex:1 1}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.project-item,.utility-grid,.utility-section-head{grid-template-columns:1fr}.utility-section-head{align-items:stretch}.utility-category-header{align-items:flex-start;flex-direction:column}.about-inline-photo{float:none;width:100%;margin:0 0 14px}.utility-detail{grid-template-columns:1fr}.utility-image{width:100%;height:140px}.project-screenshot{max-height:220px}}.calendar-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.calendar-toolbar-actions{display:flex;align-items:center;gap:10px}.calendar-picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.calendar-picker-field{display:inline-flex;align-items:center;gap:6px;color:var(--muted-strong);font-size:.92rem;white-space:nowrap}.calendar-month-select,.calendar-week-select,.calendar-year-input{height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:rgba(2,6,23,.42);color:var(--text);font:inherit}.calendar-year-input{width:92px;padding:0 10px}.calendar-month-select,.calendar-week-select{min-width:82px;padding:0 28px 0 10px}.calendar-week-select{min-width:146px}.calendar-title{min-width:138px;text-align:center;font-weight:600;color:var(--muted-strong)}.calendar-grid-wrap{display:grid;grid-template-columns:56px repeat(7,minmax(0,1fr));border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.calendar-cell,.calendar-day-header,.calendar-week-header,.calendar-week-number{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.calendar-day-header,.calendar-week-header{background:rgba(148,163,184,.1);color:var(--muted-strong);padding:10px 8px;font-weight:600;text-align:center}.calendar-week-number{display:grid;place-items:center;font-size:.88rem;color:var(--muted);background:rgba(2,6,23,.22)}.calendar-cell{position:relative;min-height:104px;padding:8px;background:transparent;color:inherit;text-align:left;cursor:pointer;overflow:hidden}.calendar-cell>*{position:relative;z-index:1}.calendar-cell:hover{background:rgba(148,163,184,.12)}.calendar-cell.is-outside{color:rgba(148,163,184,.78);background:rgba(2,6,23,.44)}.calendar-cell.is-outside:before{position:absolute;inset:0;z-index:0;content:"";background:linear-gradient(rgba(2,6,23,.38),rgba(2,6,23,.38)),repeating-linear-gradient(-45deg,rgba(148,163,184,.06),rgba(148,163,184,.06) 1px,transparent 0,transparent 8px);-webkit-backdrop-filter:blur(1.5px) saturate(.72);backdrop-filter:blur(1.5px) saturate(.72)}.calendar-cell.is-holiday{background:rgba(127,29,29,.2)}.calendar-cell.is-selected{outline:2px solid var(--accent-strong);outline-offset:-2px}.calendar-date-stack{display:inline-flex;flex-direction:column;gap:2px;align-items:flex-start}.calendar-month-label{font-size:.68rem;font-weight:600;line-height:1;color:rgba(148,163,184,.82)}.calendar-date{font-weight:600}.calendar-cell.is-outside .calendar-month-label{color:rgba(203,213,225,.54)}.calendar-holiday-name{margin-top:4px;font-size:.82rem;color:#fecaca;line-height:1.35}.calendar-memo-mark{margin-top:6px;display:inline-flex;border-radius:999px;border:1px solid var(--border-strong);padding:2px 8px;font-size:.74rem;color:var(--muted-strong)}.calendar-memo-list{border-top:1px solid var(--border);padding-top:18px}.calendar-memo-list-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.calendar-memo-list-header h3{margin:0;font-size:1rem}.calendar-memo-list-header span{color:var(--muted);font-size:.88rem}.calendar-memo-empty{margin:0}.calendar-memo-items{display:grid;grid-gap:8px;gap:8px;max-height:320px;overflow:auto;padding-right:2px}.calendar-memo-item{display:grid;grid-gap:6px;gap:6px;width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.24);color:inherit;cursor:pointer;padding:12px;text-align:left;transition:border-color .16s ease,background .16s ease}.calendar-memo-item.is-selected,.calendar-memo-item:hover{border-color:var(--accent-strong);background:rgba(14,165,233,.12)}.calendar-memo-date{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--muted-strong);font-size:.9rem;font-weight:600}.calendar-memo-date span{border-radius:999px;border:1px solid var(--border-strong);color:var(--muted);font-size:.74rem;padding:2px 7px}.calendar-memo-preview{display:-webkit-box;overflow:hidden;color:var(--text);font-size:.92rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:pre-line}@media (max-width:960px){.calendar-grid-wrap{grid-template-columns:50px repeat(7,minmax(0,1fr))}.calendar-cell{min-height:90px}}@media (max-width:640px){.calendar-toolbar-actions{width:100%;justify-content:space-between}.calendar-picker{width:100%}.calendar-picker-field{flex:1 1 120px}.calendar-month-select,.calendar-week-select,.calendar-year-input{width:100%}.calendar-grid-wrap{font-size:.86rem}.calendar-cell{min-height:76px;padding:6px}.calendar-holiday-name{font-size:.72rem}}.diagram-hero{position:relative;overflow:hidden;gap:14px;padding:18px 20px;background:radial-gradient(circle at top right,rgba(167,139,250,.14),transparent 34%),radial-gradient(circle at 18% 100%,rgba(45,212,191,.1),transparent 28%),linear-gradient(145deg,rgba(15,23,42,.96),rgba(17,24,39,.92))}.diagram-hero .eyebrow{padding:5px 10px;font-size:.78rem}.diagram-hero .label{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.diagram-hero:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px 0 rgba(226,232,240,.06)}.diagram-hero-top{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:center}.diagram-hero-title{margin:8px 0 6px;font-family:var(--font-serif);font-size:clamp(1.55rem,2.4vw,2rem);line-height:1.1;letter-spacing:-.02em}.diagram-hero-lead{max-width:58ch;margin:0;font-size:.92rem;line-height:1.55}.diagram-hero-formats{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}.diagram-format-pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;border:1px solid transparent;font-size:.74rem;font-weight:650;letter-spacing:.01em}.diagram-format-pill-mermaid{border-color:rgba(196,181,253,.34);background:rgba(139,92,246,.14);color:#ddd6fe}.diagram-format-pill-plantuml{border-color:rgba(110,231,183,.34);background:rgba(16,185,129,.14);color:#a7f3d0}.diagram-format-pill-markdown{border-color:rgba(125,211,252,.34);background:rgba(56,189,248,.14);color:#bae6fd}.diagram-hero-mark{display:grid;place-items:center;width:112px;height:84px;border:1px solid rgba(148,163,184,.16);border-radius:18px;background:linear-gradient(160deg,rgba(139,92,246,.12),rgba(45,212,191,.08)),rgba(2,6,23,.28);color:rgba(186,230,253,.72);box-shadow:inset 0 1px 0 rgba(226,232,240,.05)}.diagram-hero-graphic{width:88px;height:auto}.diagram-hero-deck{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(200px,.95fr) minmax(0,1fr);grid-gap:10px;gap:10px;align-items:stretch}.diagram-hero-card{display:grid;grid-gap:8px;gap:8px;align-content:center;min-width:0;border:1px solid rgba(148,163,184,.14);border-radius:var(--radius-sm);background:rgba(2,6,23,.28);padding:10px 12px}.diagram-hero-card-row{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;justify-content:space-between}.diagram-hero-card-row .label{flex:0 0 auto}.diagram-hero-status-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.diagram-tag-compact{padding:4px 8px;font-size:.74rem}.diagram-hero .segmented-control{padding:3px}.diagram-mode-control .segment{padding:5px 9px;font-size:.8rem}.diagram-hero-drop-zone{min-height:54px;gap:2px;padding:8px 10px}.diagram-hero-drop-zone .file-drop-title{font-size:.82rem}.diagram-hero-drop-zone .file-drop-hint{font-size:.72rem}.diagram-compact-button{min-height:32px;padding:6px 11px;font-size:.82rem}.diagram-hero-copy,.diagram-panel-heading{min-width:0}.diagram-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.diagram-header-tools{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:0}.diagram-status-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.diagram-workbench-shell.is-wide{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-inline:clamp(16px,2.4vw,32px);box-sizing:border-box}.diagram-workbench-bar{display:flex;justify-content:flex-end;margin-bottom:8px}.diagram-wide-toggle.is-active{border-color:rgba(125,211,252,.42);background:rgba(56,189,248,.12);color:#e0f2fe}.diagram-workbench-shell.is-wide .diagram-textarea{min-height:460px}.diagram-workbench-shell.is-wide .diagram-preview-surface{min-height:min(72vh,920px);max-height:min(82vh,980px)}.diagram-workbench{--diagram-splitter-size:12px;display:grid;grid-template-columns:minmax(260px,var(--diagram-source-size,20%)) var(--diagram-splitter-size) minmax(260px,1fr);grid-gap:0;gap:0;align-items:stretch}.diagram-workbench-splitter{position:relative;z-index:1;align-self:stretch;width:var(--diagram-splitter-size);margin-inline:-2px;cursor:col-resize;touch-action:none}.diagram-workbench-splitter:before{content:"";position:absolute;top:18px;bottom:18px;left:50%;width:2px;border-radius:999px;background:rgba(148,163,184,.28);transform:translateX(-50%);transition:background .16s ease,width .16s ease}.diagram-workbench-splitter:after{content:"";position:absolute;top:50%;left:50%;width:4px;height:28px;border-radius:999px;background:rgba(148,163,184,.42);transform:translate(-50%,-50%);transition:background .16s ease,height .16s ease}.diagram-workbench-splitter:hover:before,.diagram-workbench.is-resizing .diagram-workbench-splitter:before{width:3px;background:rgba(125,211,252,.72)}.diagram-workbench-splitter:hover:after,.diagram-workbench.is-resizing .diagram-workbench-splitter:after{height:36px;background:rgba(125,211,252,.82)}.diagram-workbench-shell.is-resizing-split{cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none}.diagram-workbench-shell.is-resizing-split .diagram-workbench-splitter{background:rgba(56,189,248,.06)}.diagram-editor-panel,.diagram-preview-panel{min-width:0;gap:10px}.diagram-panel-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:flex-start}.diagram-panel-header-tools{align-items:center;gap:10px}.diagram-panel-title{margin:0 0 4px;font-size:.98rem;font-weight:700;letter-spacing:-.01em}.diagram-panel-meta{margin:0;font-size:.8rem;line-height:1.45}.diagram-panel-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.diagram-source-field{gap:0}.diagram-source-header-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.diagram-source-font-controls{display:flex;flex-wrap:wrap;gap:6px;align-items:center;width:-moz-fit-content;width:fit-content;padding:3px;border:1px solid rgba(148,163,184,.14);border-radius:999px;background:rgba(2,6,23,.18)}.diagram-source-font-value{min-width:42px;color:var(--muted-strong);font-size:.78rem;text-align:center}.diagram-textarea{min-height:420px;resize:vertical;border-color:rgba(148,163,184,.22);border-radius:var(--radius-md);background:linear-gradient(180deg,rgba(2,6,23,.42),rgba(2,6,23,.3)),rgba(15,23,42,.72);color:#e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--diagram-source-font-size,13px);line-height:1.5;padding:14px}.diagram-textarea::placeholder{color:rgba(148,163,184,.72)}.diagram-textarea:focus{border-color:rgba(125,211,252,.42);box-shadow:0 0 0 3px rgba(56,189,248,.08)}.diagram-preview-deck{display:grid;grid-gap:0;gap:0;min-width:0}.diagram-export-actions,.diagram-zoom-controls{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.diagram-zoom-controls{width:-moz-fit-content;width:fit-content;padding:3px;border:1px solid rgba(148,163,184,.14);border-radius:999px;background:rgba(2,6,23,.18)}.diagram-zoom-value{min-width:44px;color:var(--muted-strong);font-size:.8rem;text-align:center}.diagram-icon-button{width:30px;min-width:30px;padding-right:0;padding-left:0}.diagram-panel-actions .diagram-compact-button{min-height:32px}.diagram-preview-surface{min-height:560px;max-height:min(78vh,900px);overflow:auto;border:1px solid rgba(148,163,184,.28);border-radius:var(--radius-md);background:linear-gradient(180deg,#ffffff,#f8fafc);box-shadow:inset 0 1px 0 rgba(255,255,255,.8);color:#111827;padding:28px}.diagram-control-bar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;align-items:end}.diagram-file-field{min-width:0;width:190px}.diagram-mode-field{min-width:0}.diagram-file-drop-zone{min-height:44px;gap:2px;padding:7px 11px}.diagram-file-drop-zone .file-drop-title{font-size:.86rem;line-height:1.1}.diagram-file-drop-zone .file-drop-hint{max-width:100%;overflow:hidden;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.diagram-mode-control{width:max-content;max-width:100%}.diagram-preview-surface .loading-inline{border-color:#cbd5e1;background:#f8fafc;color:#334155}.diagram-preview-surface .notice-error{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.diagram-preview-content{--diagram-zoom:1;width:calc(100% / var(--diagram-zoom));min-width:0;transform:scale(var(--diagram-zoom));transform-origin:top left}.diagram-empty-state{min-height:360px;display:grid;place-items:center;grid-gap:10px;gap:10px;color:#475569;text-align:center}.diagram-empty-state p{margin:0}.diagram-svg-wrap{min-width:min-content;padding:12px;color:#111827}.diagram-svg-wrap svg{max-width:100%;height:auto}.diagram-markdown-document{display:grid;grid-gap:18px;gap:18px;color:#111827;line-height:1.72}.diagram-markdown-document h1,.diagram-markdown-document h2,.diagram-markdown-document h3,.diagram-markdown-document h4,.diagram-markdown-document h5,.diagram-markdown-document h6{margin:0;line-height:1.25}.diagram-markdown-document h1{font-size:1.9rem}.diagram-markdown-document h2{font-size:1.45rem}.diagram-markdown-document blockquote,.diagram-markdown-document ol,.diagram-markdown-document p,.diagram-markdown-document ul{margin:0}.diagram-markdown-document ol,.diagram-markdown-document ul{padding-left:24px}.diagram-markdown-document a{color:#1d4ed8;text-decoration:underline;text-underline-offset:3px}.diagram-code-block,.diagram-markdown-document code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.diagram-markdown-document :not(pre)>code{border-radius:5px;background:#f1f5f9;color:#0f172a;padding:2px 5px}.diagram-markdown-document blockquote{border-left:3px solid #94a3b8;color:#475569;padding-left:14px}.diagram-markdown-document hr{width:100%;border:0;border-top:1px solid #cbd5e1}.diagram-code-block{overflow:auto;border:1px solid #cbd5e1;border-radius:var(--radius-sm);background:#f8fafc;color:#111827;line-height:1.55;margin:0;padding:14px;white-space:pre}.diagram-table-scroll{overflow-x:auto}.diagram-markdown-document table{width:100%;border-collapse:collapse;font-size:.95rem}.diagram-markdown-document td,.diagram-markdown-document th{border:1px solid #cbd5e1;padding:9px 10px;text-align:left;vertical-align:top}.diagram-markdown-document th{background:#f1f5f9;color:#0f172a;font-weight:600}.diagram-block-error{border:1px solid #fca5a5;border-radius:var(--radius-sm);background:#fef2f2;color:#991b1b;padding:14px}.diagram-block-error p{margin:10px 0 0;white-space:pre-wrap;word-break:break-word}.diagram-history-panel{gap:12px}.diagram-history-save-bar{display:grid;grid-gap:10px;gap:10px;justify-items:end}.diagram-history-comment-field{display:grid;grid-gap:6px;gap:6px;width:min(100%,420px)}.diagram-history-comment-label{color:var(--muted-strong);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.diagram-history-comment-input{width:100%;min-width:0;border:1px solid rgba(148,163,184,.22);border-radius:var(--radius-sm);background:rgba(2,6,23,.34);color:var(--foreground);font:inherit;font-size:.86rem;line-height:1.4;padding:8px 10px}.diagram-history-comment-input::placeholder{color:rgba(148,163,184,.72)}.diagram-history-comment-input:focus{border-color:rgba(125,211,252,.42);outline:2px solid rgba(56,189,248,.18);outline-offset:1px}.diagram-history-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.diagram-history-message{border:1px solid rgba(125,211,252,.24);border-radius:var(--radius-sm);background:rgba(56,189,248,.1);color:#bae6fd;font-size:.84rem;padding:8px 12px}.diagram-history-active{display:flex;flex-wrap:wrap;gap:8px}.diagram-history-list{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.diagram-history-item{display:grid;grid-gap:8px;gap:8px;border:1px solid rgba(148,163,184,.16);border-radius:var(--radius-sm);background:rgba(2,6,23,.22);padding:10px 12px}.diagram-history-item.is-active{border-color:rgba(125,211,252,.34);background:rgba(56,189,248,.08)}.diagram-history-item-main{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:flex-start}.diagram-history-item-copy{display:grid;grid-gap:4px;gap:4px;min-width:0}.diagram-history-item-heading{display:grid;grid-gap:6px;gap:6px}.diagram-history-comment-input-inline{max-width:100%}.diagram-history-item-title{font-size:.92rem;line-height:1.35}.diagram-history-item-meta{font-size:.78rem;line-height:1.45}.diagram-history-item-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.diagram-history-version-list{display:grid;grid-gap:6px;gap:6px;margin:0;padding:0 0 0 10px;border-left:2px solid rgba(148,163,184,.18);list-style:none}.diagram-history-version-item{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center}.diagram-history-version-copy{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-width:0}.diagram-history-version-label{color:var(--muted-strong);font-size:.8rem;font-weight:700}.diagram-history-empty{margin:0;font-size:.88rem}@media (max-width:1060px){.diagram-workbench{grid-template-columns:1fr}.diagram-workbench-splitter{display:none}.diagram-workbench{gap:18px}.diagram-textarea{min-height:320px;font-size:var(--diagram-source-font-size,15px)}.diagram-preview-surface{min-height:480px;max-height:none}}@media (max-width:640px){.diagram-hero-top,.diagram-panel-header-tools,.diagram-title-row{flex-direction:column;align-items:stretch}.diagram-panel-actions{width:100%;justify-content:space-between}.diagram-export-actions,.diagram-export-actions .button,.diagram-export-actions .ghost-button{flex:1 1 auto}.diagram-history-item-main,.diagram-history-version-item{flex-direction:column;align-items:stretch}.diagram-history-actions,.diagram-history-item-actions,.diagram-history-save-bar{width:100%;justify-content:flex-start}.diagram-history-comment-field{width:100%}.diagram-source-header-actions{width:100%;justify-content:space-between}.diagram-hero-top{display:flex}.diagram-hero-mark{width:100%;max-width:none}.diagram-hero-deck{grid-template-columns:1fr}.diagram-control-bar,.diagram-header-tools{align-items:stretch}.diagram-control-bar,.diagram-status-tags{justify-content:flex-start}.diagram-file-field{width:100%}.diagram-mode-control{width:100%;overflow-x:auto}.diagram-preview-surface{min-height:460px;padding:12px}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;-webkit-clip-path:inset(50%);clip-path:inset(50%)}.ladder-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:22px;gap:22px;align-items:end}.ladder-intro h1{margin:14px 0 10px;font-size:2.4rem}.ladder-complexity{display:grid;grid-gap:9px;gap:9px;justify-items:end}.ladder-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);grid-gap:18px;gap:18px;align-items:start}.ladder-main-stack,.ladder-side-stack{display:grid;grid-gap:18px;gap:18px;min-width:0}.ladder-editor-panel{display:grid;grid-gap:18px;gap:18px}.ladder-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.ladder-editor-column{min-width:0}.ladder-actions,.ladder-board-header,.ladder-editor-heading,.ladder-side-heading{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.ladder-editor-heading h2,.ladder-side-heading h2{margin:0;font-size:1.12rem}.ladder-row-list{display:grid;grid-gap:9px;gap:9px;margin-top:12px}.ladder-input-row{display:grid;grid-template-columns:minmax(0,1fr) 40px 40px 40px;grid-gap:7px;gap:7px;align-items:center}.ladder-icon-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:rgba(226,232,240,.06);color:var(--text);cursor:pointer;font-weight:700;transition:border-color .16s ease,background .16s ease,transform .16s ease}.ladder-icon-button:hover{border-color:rgba(125,211,252,.5);background:rgba(14,165,233,.14);transform:translateY(-1px)}.ladder-icon-button:disabled{cursor:not-allowed;opacity:.42;transform:none}.ladder-actions{justify-content:flex-start}.ladder-board-panel{display:grid;grid-gap:16px;gap:16px;min-width:0}.ladder-board-header>div{display:flex;flex-wrap:wrap;gap:8px}.ladder-empty-board{min-height:420px;place-content:center;text-align:center}.ladder-empty-board h2{margin:6px 0 0}.ladder-scroll{overflow-x:auto;padding-bottom:6px}.ladder-label-grid{display:grid;grid-gap:10px;gap:10px;margin:0 auto;align-items:stretch}.ladder-person,.ladder-result-card{min-width:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.3);color:var(--text);padding:10px 12px}.ladder-person{cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.ladder-person.is-selected,.ladder-person:hover{border-color:rgba(125,211,252,.58);background:rgba(14,165,233,.14);transform:translateY(-1px)}.ladder-person.is-revealed{border-color:rgba(134,239,172,.45);background:rgba(20,83,45,.24)}.ladder-person span,.ladder-result-card span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ladder-svg{display:block;max-width:none;margin:8px auto;overflow:visible}.ladder-line{stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:ladder-line-draw .68s ease forwards}.ladder-line-vertical{stroke:rgba(203,213,225,.76);stroke-width:5}.ladder-line-bridge{stroke:rgba(125,211,252,.74);stroke-width:5}.ladder-active-path{fill:none;stroke:#86efac;stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;filter:drop-shadow(0 0 10px rgba(134,239,172,.5))}.ladder-active-path.is-tracing{stroke-dashoffset:1;animation:ladder-route-trace 1.1s cubic-bezier(.22,1,.36,1) forwards}.ladder-result-grid{margin-top:-4px}.ladder-result-card{color:var(--muted);text-align:center;transform:translateY(4px);transition:border-color .22s ease,background .22s ease,color .22s ease,opacity .22s ease,transform .22s ease}.ladder-result-card.is-revealed{border-color:rgba(134,239,172,.46);background:rgba(22,101,52,.25);color:#dcfce7;transform:translateY(0)}.ladder-side-panel{display:grid;grid-gap:14px;gap:14px}.ladder-match-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.ladder-match-list button{display:grid;grid-template-columns:minmax(0,1fr) minmax(88px,auto);grid-gap:10px;gap:10px;align-items:center;width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.22);color:inherit;cursor:pointer;padding:11px 12px;text-align:left}.ladder-match-list button:hover,.ladder-match-list li.is-revealed button{border-color:rgba(125,211,252,.42);background:rgba(14,165,233,.1)}.ladder-match-list span,.ladder-match-list strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ladder-match-list strong{color:var(--muted-strong);text-align:right}.ladder-match-list li.is-revealed strong{color:var(--success)}.ladder-history-item,.ladder-history-list{display:grid;grid-gap:10px;gap:10px}.ladder-history-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.22);padding:10px}.ladder-history-item.is-active{border-color:rgba(125,211,252,.48);background:rgba(14,165,233,.1)}.ladder-history-main{display:grid;grid-gap:5px;gap:5px;width:100%;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;text-align:left}.ladder-history-main span,.ladder-history-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ladder-history-main span{color:var(--muted);font-size:.88rem}.ladder-history-actions{display:flex;flex-wrap:wrap;gap:8px}.ladder-history-actions .danger-button,.ladder-history-actions .ghost-button{flex:1 1;padding:8px 10px}@keyframes ladder-line-draw{to{stroke-dashoffset:0}}@keyframes ladder-route-trace{to{stroke-dashoffset:0}}@media (max-width:1080px){.ladder-intro,.ladder-layout{grid-template-columns:1fr}.ladder-complexity{justify-items:start}.ladder-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.ladder-editor-grid,.ladder-side-stack{grid-template-columns:1fr}.ladder-input-row{grid-template-columns:minmax(0,1fr) 36px 36px 36px}.ladder-icon-button{width:36px;height:36px}.ladder-side-heading{align-items:stretch;flex-direction:column}.ladder-side-heading .ghost-button{width:100%}}@media (max-width:520px){.ladder-intro h1{font-size:2rem}.ladder-actions{align-items:stretch;flex-direction:column}.ladder-actions .button,.ladder-actions .ghost-button{width:100%}}@media (prefers-reduced-motion:reduce){.ladder-active-path.is-tracing,.ladder-line{animation-duration:1ms}.ladder-icon-button,.ladder-person,.ladder-result-card{transition-duration:1ms}}.tetris-loading-screen{display:grid;grid-template-columns:minmax(220px,340px) minmax(240px,1fr);grid-gap:28px;gap:28px;align-items:center;min-height:min(72vh,680px);padding:clamp(28px,6vw,72px) 0}.tetris-loading-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));width:min(100%,340px);aspect-ratio:10/4;overflow:hidden;border:1px solid rgba(125,211,252,.26);border-radius:14px;background:linear-gradient(rgba(8,13,26,.94),rgba(8,13,26,.98)),repeating-linear-gradient(0deg,rgba(125,211,252,.11) 0 1px,transparent 1px 25%),repeating-linear-gradient(90deg,rgba(125,211,252,.1) 0 1px,transparent 1px 10%);box-shadow:0 24px 54px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.08);padding:10px}.tetris-loading-grid span{border:1px solid rgba(255,255,255,.08);background:rgba(125,211,252,.08);animation:tetris-loading-cell 1.1s ease-in-out var(--delay,0s) infinite}.tetris-loading-grid span:nth-child(5n+1){background:rgba(138,255,199,.72)}.tetris-loading-grid span:nth-child(5n+2){background:rgba(250,204,21,.72)}.tetris-loading-grid span:nth-child(5n+3){background:rgba(192,132,252,.7)}.tetris-loading-grid span:nth-child(5n+4){background:rgba(96,165,250,.72)}.tetris-loading-grid span:nth-child(5n){background:rgba(251,146,60,.72)}.tetris-loading-copy{display:grid;grid-gap:14px;gap:14px;min-width:0}.tetris-loading-copy h1{margin:0;font-size:3.35rem;line-height:.96}.tetris-loading-copy p{max-width:520px;margin:0;color:var(--muted-strong);line-height:1.55}.tetris-loading-copy .button{width:-moz-fit-content;width:fit-content}.tetris-loading-bar{position:relative;width:min(100%,360px);height:8px;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.16)}.tetris-loading-bar span{position:absolute;inset:0 auto 0 0;width:42%;border-radius:inherit;background:linear-gradient(90deg,#8affc7,#7ad8ff,#ffd54a);animation:tetris-loading-bar 1.2s ease-in-out infinite}@keyframes tetris-loading-cell{0%,to{opacity:.28;transform:translateY(0)}45%{opacity:1;transform:translateY(-3px)}}@keyframes tetris-loading-bar{0%{transform:translateX(-100%)}to{transform:translateX(240%)}}.tetris-intro{display:grid;grid-template-columns:minmax(220px,.62fr) minmax(500px,1.38fr);grid-gap:18px;gap:18px;align-items:center;padding-block:18px}.tetris-intro-copy{min-width:0}.tetris-intro h1{margin:8px 0 6px;font-size:clamp(2rem,3vw,2.35rem);line-height:1}.tetris-intro-copy .muted{margin:0;line-height:1.45}.tetris-mode-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.tetris-mode-console{display:grid;grid-gap:10px;gap:10px;min-width:0}.tetris-mode-console-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.tetris-mode-console-header span{color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tetris-mode-console-header strong{color:#d9fff2;font-size:.92rem;font-weight:800;white-space:nowrap}.tetris-mode-card{--mode-a:#8affc7;--mode-b:#7ad8ff;position:relative;isolation:isolate;display:grid;grid-template-columns:34px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;min-height:60px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025)),rgba(10,18,31,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);color:rgba(232,240,255,.78);cursor:pointer;padding:9px;text-align:left;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.tetris-mode-aura{position:absolute;z-index:-1;inset:0;border-radius:inherit;background:linear-gradient(135deg,color-mix(in srgb,var(--mode-a) 24%,transparent),transparent 48%,color-mix(in srgb,var(--mode-b) 18%,transparent));opacity:0;transition:opacity .16s ease}.tetris-mode-card.is-active,.tetris-mode-card:hover{border-color:color-mix(in srgb,var(--mode-a) 62%,rgba(255,255,255,.18));color:rgba(247,250,255,.98);transform:translateY(-1px)}.tetris-mode-card.is-active{background:linear-gradient(135deg,color-mix(in srgb,var(--mode-a) 22%,transparent),color-mix(in srgb,var(--mode-b) 12%,transparent)),rgba(12,22,32,.82);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 34px rgba(0,0,0,.2),0 0 22px color-mix(in srgb,var(--mode-a) 18%,transparent)}.tetris-mode-card.is-active .tetris-mode-aura,.tetris-mode-card:hover .tetris-mode-aura{opacity:1}.tetris-mode-icon{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2px;gap:2px;place-items:center;width:34px;height:34px;border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--mode-a) 18%,transparent),color-mix(in srgb,var(--mode-b) 12%,transparent)),rgba(5,12,20,.68);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 9px 18px rgba(0,0,0,.24);padding:6px}.tetris-mode-icon i{width:100%;aspect-ratio:1;border-radius:3px;background:rgba(255,255,255,.09)}.tetris-mode-icon i.is-filled{box-shadow:0 0 8px color-mix(in srgb,var(--mode-a) 36%,transparent)}.tetris-mode-card.is-active .tetris-mode-icon,.tetris-mode-icon i.is-filled{background:linear-gradient(145deg,var(--mode-a),var(--mode-b))}.tetris-mode-card.is-active .tetris-mode-icon i{background:rgba(9,17,29,.42)}.tetris-mode-card.is-active .tetris-mode-icon i.is-filled{background:rgba(9,17,29,.92);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}.tetris-mode-copy{display:grid;grid-gap:3px;gap:3px;min-width:0}.tetris-mode-copy strong{font-size:.86rem;line-height:1.08}.tetris-mode-copy small,.tetris-mode-copy strong{overflow:hidden;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.tetris-mode-copy small{color:rgba(188,201,222,.78);font-size:.64rem;line-height:1;text-transform:uppercase}.tetris-mode-card.is-active .tetris-mode-copy small{color:color-mix(in srgb,var(--mode-a) 68%,white)}.tetris-mode-check{position:absolute;top:50%;right:10px;width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.15);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transform:translateY(-50%)}.tetris-mode-card.is-active .tetris-mode-check{background:linear-gradient(135deg,var(--mode-a),var(--mode-b));box-shadow:0 0 0 3px color-mix(in srgb,var(--mode-a) 16%,transparent),0 0 14px color-mix(in srgb,var(--mode-a) 32%,transparent)}.tetris-mode-readout{margin:0;overflow:hidden;border-left:2px solid color-mix(in srgb,var(--accent) 54%,rgba(138,255,199,.42));color:var(--muted-strong);font-size:.86rem;line-height:1.4;padding-left:10px;text-overflow:ellipsis;white-space:nowrap}.tetris-layout{grid-template-columns:minmax(360px,.95fr) minmax(380px,1fr);align-items:start}.game-main-column,.tetris-layout{display:grid;grid-gap:18px;gap:18px}.game-main-column,.tetris-play-panel,.tetris-side-panel{min-width:0}.tetris-play-panel{display:grid;grid-gap:16px;gap:16px;border-color:rgba(139,224,207,.18);background:linear-gradient(135deg,rgba(27,74,70,.22),rgba(62,42,57,.14) 52%,rgba(77,63,33,.1)),var(--panel);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 24px 60px rgba(0,0,0,.18)}.tetris-play-actions,.tetris-play-header,.tetris-rate-row,.tetris-status-line{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.tetris-play-header>div:first-child{display:flex;flex-wrap:wrap;gap:8px}.tetris-music-toggle{position:relative;display:inline-flex;gap:8px;align-items:center;min-height:40px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(10,18,31,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);color:rgba(232,240,255,.78);cursor:pointer;font-size:.78rem;font-weight:800;padding:8px 12px 8px 9px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tetris-music-toggle input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.tetris-music-toggle span{position:relative;width:34px;height:20px;border-radius:999px;background:rgba(148,163,184,.2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:background .16s ease,box-shadow .16s ease}.tetris-music-toggle span:after{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:999px;background:rgba(232,240,255,.8);box-shadow:0 3px 8px rgba(0,0,0,.3);content:"";transition:background .16s ease,transform .16s ease}.tetris-music-toggle input:checked+span{background:rgba(139,224,207,.28);box-shadow:inset 0 0 0 1px rgba(139,224,207,.36),0 0 16px rgba(139,224,207,.14)}.tetris-music-toggle input:checked+span:after{background:#8affc7;transform:translateX(14px)}.tetris-music-toggle input:focus-visible+span{outline:2px solid rgba(122,216,255,.72);outline-offset:3px}.tetris-music-toggle b{line-height:1}.tetris-side-stack{display:grid;grid-gap:18px;gap:18px}.tetris-side-panel{display:grid;grid-gap:16px;gap:16px;overflow:hidden;border-color:rgba(255,255,255,.1);background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),rgba(10,18,31,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.055)}.tetris-side-panel h2{margin:0;font-size:1.18rem;line-height:1}.game-leaderboard-panel{align-content:start}.leaderboard-title-row{display:grid;grid-gap:10px;gap:10px}.leaderboard-summary{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.leaderboard-summary span{display:inline-flex;align-items:center;min-height:28px;border:1px solid rgba(139,224,207,.18);border-radius:999px;background:rgba(10,18,31,.42);color:var(--muted-strong);font-size:.76rem;font-weight:800;line-height:1;padding:6px 9px;white-space:nowrap}.tetris-board-stage{position:relative;width:min(100%,430px);margin:0 auto;isolation:isolate;border:1px solid rgba(148,163,184,.24);border-radius:22px;background:linear-gradient(145deg,rgba(51,65,85,.9),rgba(2,6,23,.96) 54%,rgba(15,23,42,.92)),linear-gradient(180deg,rgba(125,211,252,.1),transparent 45%);box-shadow:0 26px 54px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08),inset 0 -18px 32px rgba(2,6,23,.5);padding:14px}.tetris-board-stage:before{inset:6px;border:1px solid rgba(125,211,252,.12);border-radius:17px;background:linear-gradient(90deg,rgba(125,211,252,.14),transparent 18%,transparent 82%,rgba(125,211,252,.1)),linear-gradient(180deg,rgba(255,255,255,.06),transparent 24%)}.tetris-board-stage:after,.tetris-board-stage:before{position:absolute;z-index:0;content:"";pointer-events:none}.tetris-board-stage:after{inset:14px;border-radius:12px;background:radial-gradient(circle at 50% 0,rgba(125,211,252,.16),transparent 42%)}.tetris-board{position:relative;z-index:1;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));width:100%;aspect-ratio:1/2;overflow:hidden;border:2px solid rgba(15,23,42,.92);border-radius:12px;background:radial-gradient(circle at 50% 0,rgba(56,189,248,.12),transparent 38%),linear-gradient(rgba(8,13,26,.9),rgba(8,13,26,.96)),repeating-linear-gradient(0deg,rgba(125,211,252,.09) 0 1px,transparent 1px 5%),repeating-linear-gradient(90deg,rgba(125,211,252,.08) 0 1px,transparent 1px 10%);box-shadow:0 12px 26px rgba(0,0,0,.28),inset 0 0 0 1px rgba(125,211,252,.12),inset 0 0 32px rgba(0,0,0,.62)}.tetris-cell{position:relative;min-width:0;min-height:0;border:1px solid rgba(2,6,23,.64);background:radial-gradient(circle at 50% 44%,rgba(30,41,59,.46),transparent 64%),linear-gradient(145deg,rgba(15,23,42,.6),rgba(2,6,23,.78));box-shadow:inset 0 0 0 1px rgba(148,163,184,.035);transform-origin:center}.tetris-cell.is-active,.tetris-cell.is-filled{border-color:color-mix(in srgb,var(--piece-color) 28%,rgba(2,6,23,.86));background:linear-gradient(135deg,rgba(255,255,255,.56),transparent 18%),radial-gradient(circle at 32% 22%,rgba(255,255,255,.48),transparent 28%),linear-gradient(145deg,color-mix(in srgb,var(--piece-color) 88%,white 12%),color-mix(in srgb,var(--piece-color) 76%,#020617 24%));box-shadow:inset 3px 3px 0 rgba(255,255,255,.28),inset -4px -5px 0 rgba(2,6,23,.26),inset 0 0 0 1px rgba(255,255,255,.12),0 0 11px color-mix(in srgb,var(--piece-color) 32%,transparent)}.tetris-cell.is-active:before,.tetris-cell.is-filled:before{position:absolute;inset:4px 5px auto;height:26%;border-radius:999px;background:rgba(255,255,255,.26);content:"";filter:blur(.5px)}.tetris-cell.is-active:after,.tetris-cell.is-filled:after{position:absolute;inset:2px;border:1px solid rgba(255,255,255,.13);border-radius:3px;background:linear-gradient(135deg,rgba(255,255,255,.12),transparent 42%);content:"";pointer-events:none}.tetris-cell.is-active{z-index:2;filter:saturate(1.18) brightness(1.04)}.tetris-cell.is-ghost{border-color:color-mix(in srgb,var(--piece-color) 45%,rgba(15,23,42,.76));background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--piece-color) 22%,transparent),transparent 62%),rgba(15,23,42,.2);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--piece-color) 62%,transparent),0 0 12px color-mix(in srgb,var(--piece-color) 22%,transparent)}.tetris-cell.is-clearing{z-index:2;animation:tetris-clear-cell var(--clear-duration,.5s) cubic-bezier(.16,1,.3,1) forwards}.tetris-board-stage.is-clearing .tetris-board{animation:tetris-board-clear-bump var(--clear-duration,.5s) cubic-bezier(.16,1,.3,1)}.tetris-clear-layer{position:absolute;z-index:2;inset:14px;overflow:hidden;border-radius:12px;mix-blend-mode:screen;pointer-events:none}.tetris-clear-row-flash{position:absolute;left:0;width:100%;height:5%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.88) 48%,transparent),linear-gradient(90deg,rgba(56,189,248,.02),rgba(125,211,252,.28),rgba(244,114,182,.12));box-shadow:0 0 18px rgba(125,211,252,.55),0 0 34px rgba(244,114,182,.28);opacity:0;transform:translateX(-110%) scaleY(.78);animation:tetris-clear-row-sweep var(--clear-duration,.5s) cubic-bezier(.16,1,.3,1) forwards}.tetris-clear-row-flash:after,.tetris-clear-row-flash:before{position:absolute;top:0;width:18%;height:100%;border-radius:999px;background:rgba(255,255,255,.76);content:"";filter:blur(6px)}.tetris-clear-row-flash:before{left:13%}.tetris-clear-row-flash:after{right:13%}.tetris-clear-pop{position:absolute;z-index:3;top:42%;left:50%;display:grid;justify-items:center;grid-gap:5px;gap:5px;min-width:190px;border:1px solid rgba(125,211,252,.28);border-radius:var(--radius-sm);background:rgba(2,6,23,.66);box-shadow:0 20px 50px rgba(2,6,23,.28),0 0 28px rgba(56,189,248,.16),inset 0 1px 0 rgba(255,255,255,.1);color:var(--text);padding:12px 16px;pointer-events:none;text-align:center;transform:translate(-50%,-50%) scale(.88);animation:tetris-clear-pop var(--clear-duration,.5s) cubic-bezier(.16,1,.3,1) forwards}.tetris-clear-pop strong{font-size:clamp(1.05rem,5vw,1.48rem);letter-spacing:.06em;line-height:1}.tetris-clear-pop span{color:#bae6fd;font-size:.96rem;font-weight:800}.tetris-clear-pop small{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}.tetris-clear-pop b{border:1px solid rgba(125,211,252,.24);border-radius:999px;background:rgba(14,165,233,.12);color:var(--muted-strong);font-size:.68rem;font-weight:800;padding:3px 7px}.tetris-clear-pop.is-lines-3,.tetris-clear-pop.is-lines-4{border-color:rgba(251,191,36,.42);box-shadow:0 20px 54px rgba(2,6,23,.3),0 0 34px rgba(251,191,36,.22),inset 0 1px 0 rgba(255,255,255,.12)}.tetris-clear-pop.is-lines-3 strong,.tetris-clear-pop.is-lines-4 strong{color:#fde68a}@keyframes tetris-clear-cell{0%{filter:brightness(1);opacity:1;transform:scale(1)}28%{filter:brightness(2.1) saturate(1.3);opacity:1;transform:scale(1.08)}62%{filter:brightness(1.65) saturate(1.2);opacity:.9;transform:scale(1.02,.68)}to{filter:brightness(2.35) blur(1px);opacity:0;transform:scale(.12,.18)}}@keyframes tetris-clear-row-sweep{0%{opacity:0;transform:translateX(-110%) scaleY(.66)}18%{opacity:1}74%{opacity:.82}to{opacity:0;transform:translateX(110%) scaleY(1.08)}}@keyframes tetris-clear-pop{0%{opacity:0;transform:translate(-50%,-46%) scale(.82)}18%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-58%) scale(1.04)}}@keyframes tetris-board-clear-bump{0%,to{transform:translateX(0)}16%{transform:translateX(-2px)}32%{transform:translateX(2px)}48%{transform:translateX(-1px)}64%{transform:translateX(1px)}}@media (prefers-reduced-motion:reduce){.tetris-board-stage.is-clearing .tetris-board,.tetris-loading-bar span,.tetris-loading-grid span{animation:none}.tetris-cell.is-clearing{animation:none;filter:brightness(1.6);opacity:.45}.tetris-clear-layer{display:none}.tetris-clear-pop{animation:none;opacity:1;transform:translate(-50%,-50%) scale(1)}}.tetris-board-overlay{position:absolute;z-index:4;inset:14px;display:grid;place-content:center;grid-gap:8px;gap:8px;border-radius:12px;background:rgba(2,6,23,.62);color:var(--text);text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:24px}.tetris-board-overlay strong{font-size:1.35rem}.tetris-board-overlay span{color:var(--muted-strong);line-height:1.5}.tetris-board-overlay.is-finished{align-content:center;justify-items:center;padding:clamp(14px,4vw,24px)}.tetris-board-submit{display:grid;grid-gap:10px;gap:10px;width:min(100%,320px)}.tetris-board-result{display:grid;grid-gap:5px;gap:5px;border:1px solid rgba(125,211,252,.26);border-radius:var(--radius-sm);background:rgba(2,6,23,.62);padding:16px}.tetris-board-best,.tetris-board-result small,.tetris-board-result span{color:var(--muted-strong)}.tetris-board-result strong{overflow:hidden;color:var(--text);font-size:clamp(1.8rem,8vw,2.45rem);line-height:1;text-overflow:ellipsis;white-space:nowrap}.tetris-board-best{margin:0;font-size:.86rem}.tetris-board-name{text-align:left}.tetris-board-name .input{background:rgba(2,6,23,.72);font-weight:700;text-align:center}.tetris-board-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.tetris-board-actions .button,.tetris-board-actions .ghost-button{width:100%;padding:10px 12px;white-space:nowrap}.tetris-board-save-status{margin:0;padding:8px 10px;font-size:.82rem;line-height:1.35}.tetris-touch-controls{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.tetris-control-button{width:100%;aspect-ratio:1;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025)),rgba(10,18,31,.54);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 20px rgba(0,0,0,.18);color:var(--text);cursor:pointer;font-size:1.1rem;font-weight:700;touch-action:none}.tetris-control-button:hover{border-color:rgba(139,224,207,.42);background:linear-gradient(145deg,rgba(139,224,207,.18),rgba(122,216,255,.08)),rgba(10,18,31,.62)}.tetris-control-button:disabled{cursor:not-allowed;opacity:.46;transform:none}.tetris-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.tetris-stat{display:grid;grid-gap:6px;gap:6px;min-height:72px;min-width:0;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025)),rgba(9,17,29,.46);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);padding:13px 14px}.tetris-control-list span,.tetris-leaderboard li span,.tetris-preview-slot>span,.tetris-rate-row,.tetris-stat span{color:var(--muted);font-size:.86rem}.tetris-stat strong{overflow:hidden;color:var(--text);font-size:1.18rem;text-overflow:ellipsis;white-space:nowrap}.tetris-rate-row{justify-content:flex-start}.tetris-rate-row span{border:1px solid rgba(139,224,207,.22);border-radius:999px;background:rgba(17,45,43,.42);color:#d9fff2;font-weight:800;padding:6px 10px}.tetris-preview-grid{display:grid;grid-template-columns:minmax(0,1fr) 118px;grid-gap:12px;gap:12px;align-items:stretch}.tetris-preview-slot{display:grid;grid-gap:9px;gap:9px;min-width:0}.tetris-preview-slot.is-next{align-content:start}.tetris-preview-slot.is-hold{justify-items:stretch}.tetris-next-list{display:grid;grid-template-columns:1.15fr repeat(4,.78fr);grid-gap:8px;gap:8px;align-items:start}.tetris-next-list .tetris-mini-piece:first-child{border-color:rgba(138,255,199,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 28px rgba(91,255,187,.12)}.tetris-preview-slot.is-hold .tetris-mini-piece{max-width:118px}.tetris-mini-piece{position:relative;width:100%;aspect-ratio:1;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(145deg,rgba(139,224,207,.1),rgba(245,104,106,.04)),rgba(7,14,22,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 10px 24px rgba(0,0,0,.16);overflow:hidden;padding:10px}.tetris-mini-piece-board{position:absolute;left:50%;top:50%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));width:calc(100% - 20px);aspect-ratio:1;transform:translate(-50%,-50%)}.tetris-leaderboard{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.tetris-leaderboard li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.02)),rgba(9,17,29,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);padding:10px}.tetris-leaderboard li>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.tetris-leaderboard span,.tetris-leaderboard strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tetris-leaderboard b{color:#ffd54a;font-size:1rem;white-space:nowrap}.tetris-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;border:1px solid rgba(139,224,207,.22);background:linear-gradient(135deg,rgba(139,224,207,.22),rgba(122,216,255,.08)),rgba(5,12,20,.68);color:#d9fff2;font-weight:700}.tetris-control-list,.tetris-submit-stack{display:grid;grid-gap:12px;gap:12px}.tetris-finish-summary{display:grid;grid-gap:4px;gap:4px;border:1px solid rgba(125,211,252,.24);border-radius:var(--radius-sm);background:rgba(14,165,233,.08);padding:14px}.tetris-finish-summary strong{font-size:1.65rem}.tetris-finish-summary span{color:var(--muted-strong)}.tetris-control-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tetris-control-list span{border:1px solid rgba(122,165,220,.25);border-radius:10px;background:rgba(10,18,34,.45);color:rgba(230,240,255,.85);font-weight:800;padding:10px}@media (max-width:1080px){.tetris-intro,.tetris-layout,.tetris-loading-screen{grid-template-columns:1fr}.tetris-loading-grid{width:min(100%,420px)}.tetris-mode-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.tetris-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.tetris-side-stack .tetris-side-panel:first-child{grid-column:1/-1}}@media (max-width:760px){.tetris-control-list,.tetris-preview-grid,.tetris-side-stack{grid-template-columns:1fr}.tetris-loading-screen{min-height:64vh}.tetris-loading-copy h1{font-size:2.55rem}.tetris-mode-tabs{grid-template-columns:repeat(5,minmax(88px,1fr));overflow-x:auto;padding-bottom:3px}.tetris-mode-readout{white-space:normal}.tetris-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tetris-next-list{grid-template-columns:repeat(5,minmax(54px,1fr));overflow-x:auto;padding-bottom:4px}.tetris-touch-controls{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:520px){.tetris-loading-copy h1{font-size:2.1rem}.tetris-loading-copy .button{width:100%}.tetris-intro h1{font-size:2rem}.tetris-play-actions,.tetris-play-header{align-items:stretch;flex-direction:column}.tetris-music-toggle,.tetris-play-actions .button,.tetris-play-actions .ghost-button{width:100%;justify-content:center}.tetris-board-stage{width:min(100%,330px)}.tetris-board-submit{width:min(100%,290px)}.tetris-board-actions{grid-template-columns:1fr}}.sudoku-intro{display:grid;grid-template-columns:minmax(220px,.62fr) minmax(500px,1.38fr);grid-gap:18px;gap:18px;align-items:center;padding-block:18px}.sudoku-intro>div:first-child{min-width:0}.sudoku-intro h1{margin:8px 0 6px;font-size:clamp(2rem,3vw,2.35rem);line-height:1}.sudoku-intro .muted{margin:0;line-height:1.45}.sudoku-level-picker{display:grid;grid-gap:10px;gap:10px;border:1px solid rgba(125,211,252,.14);border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(2,6,23,.28)),rgba(2,6,23,.18);padding:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.sudoku-level-picker-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.sudoku-level-picker-header span{color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sudoku-level-picker-header strong{border:1px solid rgba(125,211,252,.24);border-radius:var(--radius-sm);background:rgba(14,165,233,.12);color:#bae6fd;font-size:.88rem;padding:5px 9px}.sudoku-level-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.sudoku-level-tabs button{position:relative;min-height:72px;overflow:hidden;border:1px solid rgba(148,163,184,.14);border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(30,41,59,.74),rgba(2,6,23,.62)),rgba(15,23,42,.76);color:var(--text);cursor:pointer;padding:8px;display:grid;grid-template-rows:auto 1fr auto;grid-gap:6px;gap:6px;align-items:stretch;text-align:left;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease,color .18s ease}.sudoku-level-tabs button:before{position:absolute;inset:0;background:radial-gradient(circle at 30% 0,rgba(125,211,252,.18),transparent 45%);content:"";opacity:0;transition:opacity .18s ease}.sudoku-level-content,.sudoku-level-topline{position:relative;z-index:1}.sudoku-level-topline{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}.sudoku-level-badge{border:1px solid rgba(125,211,252,.22);border-radius:999px;background:rgba(14,165,233,.12);color:#bae6fd;font-size:.72rem;font-weight:800;line-height:1;padding:4px 7px}.sudoku-level-tier{color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.sudoku-level-content{display:grid;align-content:center;grid-gap:2px;gap:2px;min-width:0}.sudoku-level-content strong{overflow:hidden;color:var(--text);font-size:.84rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.sudoku-level-tabs button:hover{border-color:rgba(125,211,252,.42);background:linear-gradient(180deg,rgba(30,64,87,.82),rgba(2,6,23,.62)),rgba(15,28,45,.94);transform:translateY(-2px);box-shadow:0 15px 34px rgba(2,9,27,.22)}.sudoku-level-tabs button.is-active:before,.sudoku-level-tabs button:hover:before{opacity:1}.sudoku-level-tabs button.is-active{border-color:rgba(56,189,248,.75);background:linear-gradient(180deg,rgba(14,165,233,.24),rgba(15,23,42,.82)),rgba(15,23,42,.8);box-shadow:0 16px 38px rgba(2,12,27,.26),inset 0 0 0 1px rgba(125,211,252,.12)}.sudoku-level-tabs button.is-active .sudoku-level-badge{border-color:rgba(186,230,253,.6);background:rgba(56,189,248,.24)}.sudoku-level-meter{position:relative;z-index:1;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-gap:2px;gap:2px}.sudoku-level-meter span{display:block;height:3px;border-radius:999px;background:rgba(148,163,184,.18)}.sudoku-level-meter span.is-filled{background:linear-gradient(90deg,rgba(56,189,248,.65),rgba(125,211,252,.9))}.sudoku-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);grid-gap:18px;gap:18px;align-items:start}.sudoku-play-panel,.sudoku-side-panel{min-width:0}.sudoku-play-panel{display:grid;grid-gap:16px;gap:16px}.sudoku-play-actions,.sudoku-play-header{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.sudoku-play-header--actions-only{justify-content:flex-end}.sudoku-play-actions--primary{justify-content:flex-end;flex:1 1}.sudoku-note-toggle{min-width:82px;border-color:rgba(94,234,212,.24)}.sudoku-note-toggle.is-active{border-color:rgba(94,234,212,.68);background:rgba(20,184,166,.14);color:#ccfbf1;box-shadow:0 0 18px rgba(20,184,166,.12)}.sudoku-top-hud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.sudoku-hud-stat{display:grid;grid-gap:4px;gap:4px;min-width:0;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);background:rgba(255,255,255,.06);padding:10px 12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.sudoku-hud-stat span{color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sudoku-hud-stat span,.sudoku-hud-stat strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sudoku-hud-stat strong{color:var(--text);font-size:1.08rem;line-height:1.1}.sudoku-hud-stat--score{border-color:rgba(125,211,252,.34);background:rgba(14,165,233,.1)}.sudoku-hud-stat--score strong{color:#7dd3fc}.sudoku-hud-stat--penalty{transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.sudoku-hud-stat--penalty.is-active{border-color:rgba(245,104,106,.5);background:rgba(245,104,106,.1);box-shadow:0 0 20px rgba(245,104,106,.1)}.sudoku-hud-stat--hidden strong{color:var(--muted-strong);font-size:.96rem}.sudoku-session-panel{display:grid;grid-gap:16px;gap:16px;border:1px solid rgba(148,163,184,.16);border-radius:var(--radius-lg);background:rgba(15,23,42,.76);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:18px}.sudoku-session-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.sudoku-session-header h2{margin:0;font-size:1.18rem}.sudoku-session-seed-header{font-size:.92rem;color:var(--muted);min-width:0;text-align:right}.sudoku-session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.sudoku-session-card{display:grid;grid-gap:4px;gap:4px;padding:14px;border-radius:var(--radius-sm);border:1px solid rgba(148,163,184,.16);background:rgba(2,6,23,.22)}.sudoku-session-label{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.sudoku-session-card strong{font-size:1.05rem;color:var(--text)}.sudoku-session-card--subtle{opacity:.72}.sudoku-session-card--subtle strong{font-size:.92rem;color:var(--muted-strong)}.sudoku-session-card--note-active{border-color:rgba(94,234,212,.34);background:rgba(20,184,166,.08)}.sudoku-session-card--note-active strong{color:#ccfbf1}.sudoku-session-dl dt{margin:0;color:var(--muted);font-size:.82rem}.sudoku-session-dl dd{margin:0;min-width:0;font-size:.95rem;color:var(--text)}.sudoku-session-mono{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sudoku-session-seed{overflow-wrap:anywhere;word-break:break-all;font-size:.82rem;color:var(--muted-strong)}.sudoku-canvas-wrap{position:relative;border:1px solid rgba(125,211,252,.18);border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(2,6,23,.64)),rgba(2,6,23,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 20px 52px rgba(0,0,0,.18);overflow:hidden}.sudoku-canvas-start-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 28px;border:1px solid rgba(125,211,252,.6);border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(56,189,248,.36),rgba(14,165,233,.2));color:#dbeafe;font-size:1rem;font-weight:700;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 14px 34px rgba(2,8,23,.36),inset 0 1px 0 rgba(255,255,255,.14);transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.sudoku-canvas-start-button:hover{transform:translate(-50%,-50%) scale(1.02);background:linear-gradient(180deg,rgba(56,189,248,.44),rgba(14,165,233,.26));border-color:rgba(125,211,252,.9);box-shadow:0 18px 42px rgba(2,8,23,.42),0 0 22px rgba(56,189,248,.12)}.sudoku-canvas{display:block;width:100%;vertical-align:middle}.sudoku-board-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;border:1px solid rgba(125,211,252,.22);border-radius:var(--radius-sm);background:rgba(15,23,42,.58);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#dbeafe;padding:8px 10px;box-shadow:0 12px 30px rgba(0,0,0,.18)}.sudoku-board-status span{border-radius:999px;background:rgba(56,189,248,.18);color:#bae6fd;font-size:.72rem;font-weight:900;line-height:1;padding:4px 7px}.sudoku-board-status strong{font-size:.76rem;line-height:1}.sudoku-progress{display:grid;grid-gap:8px;gap:8px}.sudoku-progress-track{height:10px;border-radius:999px;background:rgba(148,163,184,.12);overflow:hidden}.sudoku-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,rgba(56,189,248,.5),rgba(125,211,252,.85));transition:width .18s ease}.sudoku-progress-label{margin:0;font-size:.86rem}.sudoku-side-stack{display:grid;grid-gap:16px;gap:16px}.sudoku-leaderboard{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.sudoku-leaderboard li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.22);padding:10px}.sudoku-leaderboard li>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.sudoku-leaderboard-result{justify-items:end;text-align:right}.sudoku-leaderboard span,.sudoku-leaderboard strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sudoku-canvas-wrap--blur .sudoku-canvas{filter:blur(4px);transform:scale(1.01);transition:filter .18s ease,transform .18s ease}.sudoku-complete-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(2,6,23,.18);pointer-events:none}.sudoku-complete-card{width:min(100%,380px);padding:24px;border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(8,24,38,.94));border:1px solid rgba(125,211,252,.26);box-shadow:0 28px 70px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06);text-align:center;pointer-events:auto}.sudoku-complete-card .tag.success{display:inline-flex;margin-bottom:12px}.sudoku-complete-score{display:block;margin:14px auto 4px;font-size:3.15rem;line-height:1;color:#7dd3fc;text-shadow:0 0 22px rgba(56,189,248,.22)}.sudoku-complete-label{margin:0 0 14px;color:var(--muted);font-size:.95rem}.sudoku-complete-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;font-size:.95rem;color:var(--muted)}.sudoku-complete-meta span{border:1px solid rgba(148,163,184,.16);border-radius:var(--radius-sm);background:rgba(2,6,23,.24);padding:6px 9px}.sudoku-complete-submit{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.sudoku-complete-name{display:grid;grid-gap:6px;gap:6px;text-align:left}.sudoku-complete-name span{color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sudoku-complete-submit-button{width:100%;justify-content:center}.sudoku-complete-status{border:1px solid rgba(125,211,252,.2);border-radius:var(--radius-sm);background:rgba(14,165,233,.08);color:var(--muted-strong);font-size:.84rem;line-height:1.35;padding:9px 10px;text-align:left}.sudoku-leaderboard span{color:var(--muted);font-size:.86rem}.sudoku-leaderboard b{color:var(--text);font-size:1rem;white-space:nowrap}.sudoku-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:rgba(125,211,252,.14);color:#bae6fd;font-weight:700}.sudoku-submit-stack{display:grid;grid-gap:12px;gap:12px}.sudoku-finish-summary{display:grid;grid-gap:4px;gap:4px;border:1px solid rgba(125,211,252,.24);border-radius:var(--radius-sm);background:rgba(14,165,233,.08);padding:14px}.sudoku-finish-summary strong{font-size:1.65rem}.sudoku-finish-summary span{color:var(--muted-strong)}.sudoku-score-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.sudoku-score-breakdown span{border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.22);color:var(--muted);font-size:.84rem;padding:9px 10px}.sudoku-control-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.sudoku-control-list span{border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.22);padding:10px;color:var(--muted);font-size:.86rem}@media (max-width:1080px){.sudoku-intro,.sudoku-layout{grid-template-columns:1fr}.sudoku-level-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.sudoku-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.sudoku-side-stack .sudoku-side-panel:first-child{grid-column:1/-1}}@media (max-width:760px){.sudoku-control-list,.sudoku-level-tabs,.sudoku-side-stack{grid-template-columns:1fr}.sudoku-top-hud{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.sudoku-top-hud{grid-template-columns:1fr}}@media (max-width:520px){.sudoku-intro h1{font-size:2rem}.sudoku-play-actions,.sudoku-play-header{align-items:stretch;flex-direction:column}.sudoku-board-status{justify-content:center;width:100%}.sudoku-play-actions .button,.sudoku-play-actions .ghost-button{width:100%}}.utility-title-row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;justify-content:space-between}.utility-status-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.utility-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);grid-gap:18px;gap:18px;align-items:start}.regex-workbench{grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr)}.utility-mode-control{width:-moz-fit-content;width:fit-content;max-width:100%;overflow-x:auto}.utility-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.utility-action-field{justify-content:end}.utility-textarea{min-height:260px}.candidate-text,.match-card code,.mono-input,.mono-output,.mono-textarea,.regex-highlight,.utility-output{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.candidate-text,.regex-highlight,.utility-output{overflow:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.26);color:var(--muted-strong);line-height:1.55;margin:0;min-height:150px;padding:14px;white-space:pre-wrap;word-break:break-word}.utility-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.utility-fact{display:grid;grid-gap:5px;gap:5px;min-width:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.24);padding:12px}.timezone-row span,.utility-fact span{color:var(--muted);font-size:.86rem}.timezone-row strong,.utility-fact strong{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.candidate-list,.match-list,.timezone-list{display:grid;grid-gap:10px;gap:10px}.candidate-card,.match-card,.timezone-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.24);padding:12px}.candidate-card.is-best{border-color:rgba(134,239,172,.4);background:rgba(20,83,45,.18)}.candidate-card .actions{justify-content:flex-end}.candidate-text{min-height:80px;margin-top:12px}.timezone-row{display:grid;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center}.regex-flag-grid{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted-strong)}.regex-flag-grid label{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--border);border-radius:999px;background:rgba(226,232,240,.04);padding:7px 10px}.regex-highlight{min-height:220px}.regex-match{border-radius:4px;background:rgba(250,204,21,.32);color:#fef9c3}.match-card{display:grid;grid-gap:10px;gap:10px}.match-card code{overflow:auto;border-radius:8px;background:rgba(15,23,42,.72);color:var(--muted-strong);padding:10px;white-space:pre-wrap}.capture-list{display:flex;flex-wrap:wrap;gap:8px}.capture-list span{border:1px solid var(--border);border-radius:999px;background:rgba(226,232,240,.05);color:var(--muted-strong);font-size:.84rem;padding:6px 9px}.utility-table-preview{max-height:330px;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.16)}.utility-table-preview .table td{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exif-layout{display:grid;grid-template-columns:minmax(300px,.92fr) minmax(0,1.18fr);grid-gap:18px;gap:18px;align-items:start}.exif-file-list,.exif-main-stack,.exif-side-stack{display:grid;grid-gap:14px;gap:14px;min-width:0}.exif-drop-zone{position:relative;display:grid;place-items:center;min-height:164px;border:1px dashed rgba(125,211,252,.48);border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(14,165,233,.14),rgba(74,222,128,.08)),rgba(2,6,23,.28);color:var(--text);overflow:hidden}.exif-drop-zone.is-dragging{border-color:rgba(74,222,128,.72);background:linear-gradient(135deg,rgba(34,197,94,.18),rgba(14,165,233,.12)),rgba(2,6,23,.32)}.exif-drop-zone div{display:grid;grid-gap:8px;gap:8px;justify-items:center;text-align:center;pointer-events:none}.exif-drop-zone strong{font-size:1.08rem}.exif-drop-zone span{color:var(--muted-strong);font-size:.92rem}.exif-file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.exif-file-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;grid-gap:8px;gap:8px;align-items:stretch}.exif-file-button,.exif-row-action{border:1px solid var(--border);background:rgba(15,23,42,.42);color:var(--text)}.exif-file-button{display:grid;grid-gap:4px;gap:4px;min-width:0;border-radius:var(--radius-md);padding:11px 12px;text-align:left}.exif-file-button small,.exif-file-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exif-file-button small{color:var(--muted)}.exif-file-row.is-active .exif-file-button{border-color:rgba(125,211,252,.58);background:rgba(14,165,233,.14)}.exif-row-action{display:grid;place-items:center;border-radius:var(--radius-md);color:var(--muted-strong)}.exif-file-button:hover,.exif-row-action:hover{border-color:rgba(125,211,252,.44)}.exif-preview-frame{display:grid;place-items:center;width:100%;aspect-ratio:4/3;min-height:220px;border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(45deg,rgba(148,163,184,.08) 25%,transparent 0),linear-gradient(-45deg,rgba(148,163,184,.08) 25%,transparent 0),linear-gradient(45deg,transparent 75%,rgba(148,163,184,.08) 0),linear-gradient(-45deg,transparent 75%,rgba(148,163,184,.08) 0),rgba(2,6,23,.24);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;overflow:hidden}.exif-preview-frame img{width:100%;height:100%;object-fit:contain}.exif-check-grid,.exif-risk-list{display:flex;flex-wrap:wrap;gap:8px}.exif-risk{display:inline-flex;align-items:center;min-height:30px;border:1px solid var(--border);border-radius:999px;padding:6px 10px;font-size:.84rem;font-weight:700}.risk-high{border-color:rgba(248,113,113,.42);background:rgba(127,29,29,.24);color:#fecaca}.risk-medium{border-color:rgba(251,191,36,.42);background:rgba(120,53,15,.24);color:#fde68a}.risk-low{border-color:rgba(125,211,252,.34);background:rgba(14,116,144,.2);color:#bae6fd}.exif-check-grid label{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:999px;background:rgba(226,232,240,.05);color:var(--muted-strong);padding:8px 10px}.exif-text-grid,.exif-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;align-items:start}.exif-raw-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);grid-gap:14px;gap:14px;align-items:end}.exif-raw-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center}.exif-table-wrap{max-height:460px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:rgba(2,6,23,.18)}.exif-table{min-width:720px}.exif-table td:first-child{color:var(--muted-strong);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.exif-table td:nth-child(2){max-width:420px;overflow-wrap:anywhere}@media (max-width:1080px){.exif-layout,.regex-workbench,.utility-workbench{grid-template-columns:1fr}}@media (max-width:640px){.utility-status-tags,.utility-title-row{flex-direction:column;align-items:flex-start}.exif-raw-actions,.exif-raw-toolbar,.exif-text-grid,.exif-tool-grid,.timezone-row,.utility-control-grid,.utility-fact-grid{grid-template-columns:1fr}.utility-mode-control{width:100%}.utility-textarea{min-height:220px}.candidate-card .list-item-header{align-items:stretch}.candidate-card .actions{justify-content:flex-start}}.mindmap-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,390px);grid-gap:18px;gap:18px;align-items:start}.mindmap-workbench.is-canvas-focused{grid-template-columns:1fr}.mindmap-workbench.is-canvas-focused .mindmap-side-stack{display:none}.mindmap-canvas-panel,.mindmap-side-stack{min-width:0}.mindmap-side-stack{display:grid;grid-gap:18px;gap:18px}.mindmap-control-deck,.mindmap-toolbar{display:grid;grid-gap:12px;gap:12px}.mindmap-toolbar{min-width:0}.mindmap-toolbar-primary{display:flex;flex-wrap:wrap;align-items:center}.mindmap-toolbar-secondary{display:flex;flex-wrap:wrap;align-items:flex-end}.mindmap-toolbar-group{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0}.mindmap-action-group,.mindmap-view-group{padding:4px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(2,6,23,.16)}.mindmap-action-group{flex-wrap:nowrap}.mindmap-view-group{justify-content:flex-start}.mindmap-control-deck .button,.mindmap-control-deck .ghost-button{min-height:38px;padding:8px 12px}.mindmap-control-deck .button{box-shadow:none}.mindmap-icon-button{width:36px;min-width:36px;padding-right:0;padding-left:0}.mindmap-search-field,.mindmap-setting-group{display:grid;grid-gap:6px;gap:6px;min-width:0}.mindmap-search-field{flex:1 1 100%}.mindmap-control-label{color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:0;line-height:1;text-transform:uppercase}.mindmap-segmented{max-width:100%;overflow-x:auto}.mindmap-segmented .segment{padding:7px 13px}.mindmap-density-select,.mindmap-format-select{min-width:150px}.mindmap-density-select{min-height:40px;padding:8px 12px}.mindmap-zoom-label{display:inline-grid;place-items:center;min-width:50px;min-height:38px;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:rgba(15,23,42,.38);color:var(--muted-strong);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.mindmap-search-row{display:grid;grid-template-columns:minmax(190px,1fr) repeat(3,auto);grid-gap:8px;gap:8px;align-items:center}.mindmap-search-input{min-width:0;min-height:40px;padding:8px 12px}.mindmap-search-row .ghost-button{min-height:40px}.mindmap-stage{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(rgba(15,23,42,.92),rgba(15,23,42,.92)),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 0),linear-gradient(rgba(148,163,184,.08) 1px,transparent 0);background-size:auto,32px 32px,32px 32px}.mindmap-stage:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(56,189,248,.08),transparent 36%,rgba(52,211,153,.06))}.mindmap-svg{position:relative;z-index:1;display:block;width:100%;min-height:min(72vh,760px);cursor:-webkit-grab;cursor:grab;touch-action:none}.mindmap-workbench.is-canvas-focused .mindmap-svg{min-height:max(760px,calc(100vh - 220px))}.mindmap-svg:active{cursor:-webkit-grabbing;cursor:grabbing}.mindmap-inline-editor{position:absolute;z-index:3;border:1px solid rgba(226,232,240,.58);border-radius:10px;background:rgba(15,23,42,.96);box-shadow:0 14px 34px rgba(2,6,23,.38);color:var(--text);font-weight:800;outline:none;padding:0 12px;text-align:center}.mindmap-inline-editor:focus{border-color:rgba(125,211,252,.78);box-shadow:0 14px 34px rgba(2,6,23,.38),0 0 0 4px rgba(14,165,233,.16)}.mindmap-hover-card{position:absolute;z-index:2;display:grid;grid-gap:9px;gap:9px;max-height:224px;overflow:hidden;border:1px solid rgba(226,232,240,.22);border-left:4px solid var(--mindmap-hover-color);border-radius:8px;background:rgba(15,23,42,.94);box-shadow:0 18px 44px rgba(2,6,23,.34);color:var(--text);padding:12px;pointer-events:none}.mindmap-hover-header{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center}.mindmap-hover-header strong{overflow:hidden;font-size:.95rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.mindmap-hover-swatch{width:10px;height:10px;border-radius:999px;background:var(--mindmap-hover-color);box-shadow:0 0 0 3px rgba(226,232,240,.08)}.mindmap-hover-note{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted-strong);font-size:.86rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:4}.mindmap-hover-note.is-empty{color:var(--muted);font-style:italic}.mindmap-hover-progress{overflow:hidden;height:5px;border-radius:999px;background:rgba(226,232,240,.12)}.mindmap-hover-progress span{display:block;height:100%;border-radius:inherit;background:var(--mindmap-hover-color)}.mindmap-hover-meta,.mindmap-hover-tags{display:flex;flex-wrap:wrap;gap:6px}.mindmap-hover-meta span,.mindmap-hover-tags span{overflow:hidden;max-width:100%;border:1px solid rgba(226,232,240,.16);border-radius:999px;background:rgba(226,232,240,.06);color:var(--muted-strong);font-size:.72rem;font-weight:750;padding:4px 8px;text-overflow:ellipsis;white-space:nowrap}.mindmap-hover-tags span{border-color:color-mix(in srgb,var(--mindmap-hover-color) 38%,rgba(226,232,240,.14))}.mindmap-canvas-bg{fill:transparent}.mindmap-connector{fill:none;stroke:var(--mindmap-connector-color);stroke-linecap:round;stroke-width:var(--mindmap-connector-width,4px);opacity:.54}.mindmap-svg-node{cursor:-webkit-grab;cursor:grab}.mindmap-svg-node:active{cursor:-webkit-grabbing;cursor:grabbing}.mindmap-node-shadow{fill:rgba(2,6,23,.28);filter:blur(1px)}.mindmap-node-box{stroke:rgba(255,255,255,.18);stroke-width:1.4px;transition:filter .16s ease,stroke .16s ease,stroke-width .16s ease}.mindmap-svg-node.is-selected .mindmap-node-box{filter:drop-shadow(0 0 16px rgba(125,211,252,.28));stroke:#e0f2fe;stroke-width:3px}.mindmap-svg-node.is-match .mindmap-node-box{stroke:#fef08a;stroke-width:3px}.mindmap-svg-node.is-ancestor .mindmap-node-box{stroke:rgba(250,204,21,.62);stroke-width:2px}.mindmap-svg-node.is-drop-target .mindmap-node-box{filter:drop-shadow(0 0 22px rgba(52,211,153,.38));stroke:#bbf7d0;stroke-width:4px}.mindmap-svg-node.is-dragging{opacity:.86}.mindmap-collapse-control text,.mindmap-node-meta,.mindmap-node-title{font-family:var(--font-sans);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mindmap-node-title{font-size:15px;font-weight:750}.mindmap-node-meta{font-size:11px;opacity:.72}.mindmap-collapse-control circle{fill:rgba(15,23,42,.92);stroke:rgba(226,232,240,.36);stroke-width:1px}.mindmap-collapse-control text{fill:var(--text);font-size:14px;font-weight:800;text-anchor:middle}.mindmap-quick-menu{filter:drop-shadow(0 12px 24px rgba(2,6,23,.28))}.mindmap-quick-menu-bg{fill:rgba(15,23,42,.94);stroke:rgba(226,232,240,.24);stroke-width:1px}.mindmap-quick-action{cursor:pointer}.mindmap-quick-action rect{fill:rgba(226,232,240,.08);stroke:rgba(226,232,240,.2);stroke-width:1px;transition:fill .16s ease,stroke .16s ease}.mindmap-quick-action text{fill:var(--muted-strong);font-family:var(--font-sans);font-size:10px;font-weight:800;pointer-events:none;text-anchor:middle;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mindmap-quick-action:hover rect{fill:rgba(56,189,248,.18);stroke:rgba(125,211,252,.48)}.mindmap-quick-action:hover text{fill:var(--text)}.mindmap-quick-action.is-danger:hover rect{fill:rgba(127,29,29,.34);stroke:rgba(252,165,165,.52)}.mindmap-quick-action.is-danger:hover text{fill:#fecaca}.mindmap-quick-action.is-disabled{cursor:not-allowed;opacity:.42}.mindmap-quick-action.is-disabled:hover rect{fill:rgba(226,232,240,.08);stroke:rgba(226,232,240,.2)}.mindmap-note-input{min-height:96px}.mindmap-node-action-group,.mindmap-node-action-stack,.mindmap-node-section{display:grid;grid-gap:8px;gap:8px}.mindmap-node-section-title{color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:0;line-height:1;text-transform:uppercase}.mindmap-node-button-row{display:grid;grid-gap:8px;gap:8px}.mindmap-node-button-row.is-structure{grid-template-columns:repeat(3,minmax(0,1fr))}.mindmap-node-button-row.is-view{grid-template-columns:repeat(2,minmax(0,1fr))}.mindmap-node-button{min-height:38px;padding:8px 10px}.mindmap-node-button.is-wide{grid-column:span 2}.mindmap-editor-grid,.mindmap-import-grid,.mindmap-template-grid{display:grid;grid-gap:10px;gap:10px}.mindmap-editor-grid,.mindmap-import-grid,.mindmap-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mindmap-template-sample{padding:8px 12px}.mindmap-template-button{display:grid;grid-gap:5px;gap:5px;min-width:0;min-height:74px;border:1px solid rgba(148,163,184,.24);border-radius:var(--radius-sm);background:rgba(2,6,23,.2);color:var(--text);cursor:pointer;padding:12px;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.mindmap-template-button:hover{border-color:rgba(125,211,252,.45);background:rgba(14,165,233,.1);transform:translateY(-1px)}.mindmap-template-button span,.mindmap-template-button strong{overflow:hidden;text-overflow:ellipsis}.mindmap-template-button strong{font-size:.96rem}.mindmap-template-button span{color:var(--muted-strong);font-size:.78rem;line-height:1.3}.mindmap-import-drop-zone{min-height:68px;padding:10px 12px}.mindmap-browser-library,.mindmap-exchange-panel{border-top:1px solid var(--border);padding-top:16px}.mindmap-save-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;grid-gap:12px;gap:12px;align-items:end}.mindmap-save-actions{justify-content:flex-end}.mindmap-saved-list{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));max-height:260px;overflow:auto;padding-right:4px}.mindmap-saved-empty,.mindmap-saved-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.24)}.mindmap-saved-empty{color:var(--muted);padding:14px}.mindmap-saved-row{display:grid;grid-gap:10px;gap:10px;align-content:space-between;padding:10px}.mindmap-saved-row.is-active{border-color:rgba(125,211,252,.5);background:rgba(14,165,233,.12)}.mindmap-saved-main{display:grid;grid-gap:4px;gap:4px;min-width:0;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;text-align:left}.mindmap-saved-main span,.mindmap-saved-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mindmap-saved-main span{color:var(--muted);font-size:.84rem}.mindmap-saved-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.mindmap-saved-actions .danger-button,.mindmap-saved-actions .ghost-button{padding:8px 10px}.mindmap-check-row,.mindmap-range-row{display:flex;gap:10px;align-items:center;color:var(--muted-strong)}.mindmap-range-row input{flex:1 1;min-width:0}.mindmap-range-row span{min-width:44px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.mindmap-range-row.is-readonly{opacity:.72}.mindmap-progress-note{margin-top:-6px;color:var(--muted);font-size:.82rem}.mindmap-color-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-gap:8px;gap:8px}.mindmap-color-swatch{aspect-ratio:1;border:2px solid rgba(226,232,240,.2);border-radius:999px;cursor:pointer;padding:0}.mindmap-color-swatch.is-selected{border-color:#e0f2fe;box-shadow:0 0 0 3px rgba(125,211,252,.16)}.mindmap-export-textarea,.mindmap-import-textarea{min-height:170px}.mindmap-outline{max-height:430px;overflow:auto;padding-right:4px}.mindmap-outline,.mindmap-outline-node{display:grid;grid-gap:4px;gap:4px}.mindmap-outline-row{display:grid;grid-template-columns:minmax(0,1fr) 32px;grid-gap:6px;gap:6px;align-items:center}.mindmap-outline-button{display:grid;grid-template-columns:10px minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;width:100%;min-width:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;font:inherit;padding:8px 10px 8px calc(10px + var(--mindmap-outline-depth, 0) * 18px);text-align:left}.mindmap-outline-button.is-selected,.mindmap-outline-button:hover{border-color:var(--border-strong);background:rgba(226,232,240,.06)}.mindmap-outline-button.is-editing{cursor:text}.mindmap-outline-button span{width:10px;height:10px;border-radius:999px}.mindmap-outline-button small,.mindmap-outline-button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mindmap-outline-button small{color:var(--muted);font-size:.78rem}.mindmap-outline-input{min-width:0;border:1px solid rgba(125,211,252,.45);border-radius:8px;background:rgba(2,6,23,.36);color:var(--text);font:inherit;font-weight:760;outline:none;padding:4px 7px}.mindmap-outline-delete{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;font-weight:800}.mindmap-outline-delete:hover:not(:disabled){border-color:rgba(252,165,165,.34);background:rgba(127,29,29,.2);color:#fecaca}.mindmap-outline-delete:disabled{cursor:not-allowed;opacity:.24}@media (max-width:1120px){.mindmap-toolbar-primary,.mindmap-toolbar-secondary,.mindmap-workbench{grid-template-columns:1fr}.mindmap-view-group{justify-content:flex-start}.mindmap-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.mindmap-toolbar-group{align-items:stretch}.mindmap-action-group,.mindmap-view-group{border-radius:var(--radius-md)}.mindmap-action-group .button,.mindmap-action-group .ghost-button,.mindmap-view-group .button,.mindmap-view-group .ghost-button:not(.mindmap-icon-button){flex:1 1 130px}.mindmap-density-select,.mindmap-format-select,.mindmap-toolbar-group{width:100%}.mindmap-editor-grid,.mindmap-import-grid,.mindmap-save-row,.mindmap-saved-list,.mindmap-side-stack,.mindmap-template-grid{grid-template-columns:1fr}.mindmap-search-row{grid-template-columns:repeat(3,minmax(0,1fr))}.mindmap-search-input{grid-column:1/-1}.mindmap-search-row .ghost-button{width:100%}.mindmap-save-actions{justify-content:flex-start}.mindmap-svg{min-height:520px}}.phase-dual-page{padding:24px 18px 80px;grid-gap:18px;gap:18px}.phase-dual-loading-screen,.phase-dual-page{max-width:1200px;margin:0 auto;display:grid;color:var(--text)}.phase-dual-loading-screen{min-height:min(72vh,680px);padding:clamp(28px,6vw,72px) 18px;grid-template-columns:minmax(220px,340px) minmax(240px,1fr);grid-gap:28px;gap:28px;align-items:center}.phase-dual-loading-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:min(100%,340px);aspect-ratio:1;overflow:hidden;border:1px solid rgba(245,158,11,.28);border-radius:8px;background:linear-gradient(rgba(8,13,26,.94),rgba(8,13,26,.98)),repeating-linear-gradient(0deg,rgba(245,158,11,.09) 0 1px,transparent 1px 14.285%),repeating-linear-gradient(90deg,rgba(34,197,94,.08) 0 1px,transparent 1px 14.285%);box-shadow:0 24px 60px rgba(0,0,0,.24),inset 0 0 42px rgba(245,158,11,.08)}.phase-dual-loading-grid span{border:1px solid rgba(255,255,255,.06);background:rgba(148,163,184,.1);animation:phase-dual-loading-cell 1.1s ease-in-out var(--delay,0s) infinite}.phase-dual-loading-grid span:nth-child(6n+1){background:rgba(245,158,11,.7)}.phase-dual-loading-grid span:nth-child(6n+2){background:rgba(34,197,94,.64)}.phase-dual-loading-grid span:nth-child(6n+3){background:rgba(96,165,250,.66)}.phase-dual-loading-grid span:nth-child(6n+4){background:rgba(192,132,252,.62)}.phase-dual-loading-grid span:nth-child(6n+5){background:rgba(244,114,182,.58)}.phase-dual-loading-grid span:nth-child(6n){background:rgba(45,212,191,.62)}.phase-dual-loading-copy{display:grid;grid-gap:14px;gap:14px;min-width:0}.phase-dual-loading-copy h1{margin:0;font-size:3.1rem;line-height:1;letter-spacing:0}.phase-dual-loading-copy p{max-width:520px;margin:0;color:var(--muted-strong);line-height:1.55}.phase-dual-loading-copy .button{width:-moz-fit-content;width:fit-content}.phase-dual-loading-bar{position:relative;width:min(100%,360px);height:8px;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.16)}.phase-dual-loading-bar span{position:absolute;inset:0 auto 0 0;width:42%;border-radius:inherit;background:linear-gradient(90deg,#f59e0b,#22c55e,#60a5fa);animation:phase-dual-loading-bar 1.2s ease-in-out infinite}@keyframes phase-dual-loading-cell{0%,to{opacity:.26;transform:scale(1)}45%{opacity:1;transform:scale(1.05)}}@keyframes phase-dual-loading-bar{0%{transform:translateX(-100%)}to{transform:translateX(240%)}}.phase-dual-intro{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,460px);grid-gap:18px;gap:18px;align-items:center}.phase-dual-intro-copy h1{margin:0;font-size:36px;font-weight:800;letter-spacing:0}.phase-dual-intro-copy p{margin:6px 0 0;color:var(--muted);font-size:14px}.phase-dual-mode-tabs,.phase-dual-tier-tabs{display:grid;grid-gap:8px;gap:8px}.phase-dual-mode-tabs{grid-template-columns:1fr 1fr}.phase-dual-tier-tabs{grid-template-columns:repeat(5,1fr)}.phase-dual-button,.phase-dual-dpad-button,.phase-dual-mode-tab,.phase-dual-piece-chip,.phase-dual-puzzle-chip,.phase-dual-tier-tab{border:1px solid rgba(148,163,184,.22);background:rgba(17,24,39,.74);color:var(--text);cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.phase-dual-mode-tab,.phase-dual-puzzle-chip,.phase-dual-tier-tab{display:grid;grid-gap:4px;gap:4px;border-radius:8px}.phase-dual-mode-tab{padding:14px 16px;text-align:left}.phase-dual-mode-tab span,.phase-dual-tier-tab span{font-weight:700}.phase-dual-mode-tab small,.phase-dual-puzzle-chip small,.phase-dual-tier-tab small{color:var(--muted);font-size:12px}.phase-dual-button:hover:not(:disabled),.phase-dual-dpad-button:hover:not(:disabled),.phase-dual-mode-tab:hover,.phase-dual-piece-chip:hover:not(:disabled),.phase-dual-puzzle-chip:hover:not(:disabled),.phase-dual-tier-tab:hover{transform:translateY(-1px);border-color:rgba(125,211,252,.52)}.phase-dual-mode-tab.is-active,.phase-dual-puzzle-chip.is-active{border-color:rgba(245,158,11,.72);background:linear-gradient(135deg,rgba(245,158,11,.16),rgba(59,130,246,.08)),rgba(17,24,39,.78)}.phase-dual-tier-tab{padding:10px;text-align:center}.phase-dual-tier-tab.is-active{border-color:rgba(34,197,94,.56);background:linear-gradient(135deg,rgba(34,197,94,.14),rgba(14,165,233,.1)),rgba(17,24,39,.78)}.phase-dual-puzzle-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px}.phase-dual-puzzle-chip{padding:10px 12px;text-align:left}.phase-dual-puzzle-chip>span{color:var(--muted);font-family:ui-monospace,monospace;font-size:11px}.phase-dual-puzzle-chip>strong{font-size:13px}.phase-dual-puzzle-chip.is-locked{opacity:.46;cursor:not-allowed}.phase-dual-puzzle-chip.is-cleared{border-color:rgba(34,197,94,.48)}.phase-dual-daily-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:8px;border:1px solid rgba(245,158,11,.35);background:linear-gradient(135deg,rgba(245,158,11,.14),rgba(34,197,94,.08)),rgba(17,24,39,.72)}.phase-dual-daily-banner div{display:grid;grid-gap:2px;gap:2px}.phase-dual-daily-banner span{color:var(--muted);font-size:13px}.phase-dual-layout{display:grid;grid-template-columns:minmax(420px,1.4fr) minmax(280px,.6fr);grid-gap:18px;gap:18px;min-width:0}.phase-dual-play-panel,.phase-dual-side-panel{min-width:0;display:grid;grid-gap:14px;gap:14px}.phase-dual-side-panel{align-content:start;align-self:start}.phase-dual-hud{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:8px;gap:8px;padding:12px;border-radius:8px;border:1px solid rgba(148,163,184,.2);background:rgba(17,24,39,.74)}.phase-dual-hud-stat{display:grid;grid-gap:2px;gap:2px}.phase-dual-hud-label{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.phase-dual-hud-value{font-size:15px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.phase-dual-canvas-wrap{position:relative;min-height:320px;padding:12px;overflow:hidden;border-radius:8px;border:1px solid rgba(148,163,184,.2);background:radial-gradient(circle at 18% 12%,rgba(245,158,11,.08),transparent 28%),radial-gradient(circle at 82% 18%,rgba(34,197,94,.08),transparent 30%),rgba(17,24,39,.72)}.phase-dual-canvas{display:block;width:100%;touch-action:none}.phase-dual-rule-badge{position:absolute;top:var(--phase-dual-badge-y,50%);left:var(--phase-dual-badge-x,50%);width:96px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 6px;border-radius:8px;border:1px solid rgba(245,158,11,.62);background:rgba(10,15,25,.94);color:var(--text);pointer-events:none;text-align:center;box-shadow:0 10px 28px rgba(0,0,0,.34)}.phase-dual-rule-icon{color:rgba(245,158,11,.95)}.phase-dual-rule-badge-text{display:grid;grid-gap:1px;gap:1px;line-height:1.15}.phase-dual-rule-badge-text strong{font-size:12px}.phase-dual-rule-badge-text span{color:var(--muted);font-size:9px}.phase-dual-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(3,7,18,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.phase-dual-overlay-card{width:min(100%,460px);display:grid;grid-gap:12px;gap:12px;padding:20px;border-radius:8px;border:1px solid rgba(148,163,184,.24);background:rgba(17,24,39,.96);text-align:center}.phase-dual-overlay-card h3{margin:0;font-size:20px}.phase-dual-overlay-card p{margin:0;color:var(--muted)}.phase-dual-overlay-card--success{border-color:rgba(34,197,94,.54)}.phase-dual-start-card{width:min(100%,340px)}.phase-dual-ready-kicker{color:rgba(245,158,11,.94);font-size:11px;font-weight:800;letter-spacing:0;text-transform:uppercase}.phase-dual-overlay-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.phase-dual-button{min-height:40px;padding:9px 14px;border-radius:8px;font-size:13px;font-weight:700}.phase-dual-button:disabled,.phase-dual-dpad-button:disabled{opacity:.44;cursor:not-allowed}.phase-dual-button.is-primary{border-color:rgba(245,158,11,.78);background:linear-gradient(135deg,rgba(245,158,11,.95),rgba(34,197,94,.72));color:#111827}.phase-dual-input{min-height:40px;min-width:160px;padding:8px 12px;border-radius:8px;border:1px solid rgba(148,163,184,.28);background:rgba(3,7,18,.58);color:var(--text);font-size:14px}.phase-dual-score-rows{display:grid;grid-gap:6px;gap:6px;padding:12px;border-radius:8px;background:rgba(3,7,18,.42)}.phase-dual-best>div,.phase-dual-score-rows>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.phase-dual-score-total{padding-top:6px;border-top:1px solid rgba(148,163,184,.22);font-size:15px;font-weight:800}.phase-dual-score-meta,.phase-dual-submit-msg{font-size:12px}.phase-dual-finale{color:rgba(34,197,94,1)}.phase-dual-tutorial{justify-items:center}.phase-dual-rule-sim{display:block;overflow:hidden;border-radius:8px;border:1px solid rgba(148,163,184,.2)}.phase-dual-rule-table{width:min(100%,240px);border-collapse:collapse;font-size:14px}.phase-dual-rule-table td{padding:6px 12px;border:1px solid rgba(148,163,184,.2);text-align:center}.phase-dual-controls{display:grid;grid-template-columns:auto 1fr;grid-gap:14px;gap:14px;align-items:center}.phase-dual-dpad{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);grid-gap:4px;gap:4px}.phase-dual-dpad-button{display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:18px}.phase-dual-dpad-up{grid-column:2;grid-row:1}.phase-dual-dpad-left{grid-column:1;grid-row:2}.phase-dual-dpad-right{grid-column:3;grid-row:2}.phase-dual-dpad-down{grid-column:2;grid-row:3}.phase-dual-action-buttons,.phase-dual-piece-picker{display:flex;flex-wrap:wrap;gap:8px}.phase-dual-piece-picker{grid-column:1/-1}.phase-dual-piece-chip{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;font-size:12px}.phase-dual-piece-chip.is-active{border-color:rgba(255,255,255,.64);background:rgba(255,255,255,.08)}.phase-dual-piece-dot{width:12px;height:12px;border-radius:3px;background:var(--piece-color,#fff)}.phase-dual-side-section{display:grid;align-content:start;grid-gap:8px;gap:8px;padding:12px 14px;border-radius:8px;border:1px solid rgba(148,163,184,.2);background:rgba(17,24,39,.72)}.phase-dual-side-section h2{margin:0;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.phase-dual-side-empty,.phase-dual-side-note{margin:0;color:var(--muted);font-size:12px;line-height:1.35}.phase-dual-submit-panel{display:grid;grid-gap:8px;gap:8px}.phase-dual-submit-panel .phase-dual-button,.phase-dual-submit-panel .phase-dual-input{width:100%}.phase-dual-best{display:grid;grid-gap:6px;gap:6px}.phase-dual-best span,.phase-dual-lb-meta,.phase-dual-leaderboard-meta,.phase-dual-puzzle-summary span{color:var(--muted);font-size:11px}.phase-dual-leaderboard,.phase-dual-puzzle-summary{display:grid;grid-gap:4px;gap:4px}.phase-dual-leaderboard{list-style:none;margin:0;padding:0}.phase-dual-leaderboard li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;grid-gap:6px;gap:6px;align-items:center;padding:6px 8px;border-radius:8px;background:rgba(3,7,18,.42);font-size:12px}.phase-dual-lb-score,.phase-dual-rank{font-weight:800}.phase-dual-lb-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.phase-dual-lb-meta{grid-column:2/-1}.phase-dual-empty{padding:60px 20px;color:var(--muted);text-align:center}@media (max-width:900px){.phase-dual-intro,.phase-dual-layout,.phase-dual-loading-screen{grid-template-columns:1fr}.phase-dual-loading-grid{width:min(100%,420px)}}@media (max-width:640px){.phase-dual-loading-copy h1{font-size:2.35rem}.phase-dual-loading-copy .button{width:100%}.phase-dual-hud{grid-template-columns:repeat(3,1fr)}.phase-dual-tier-tabs{grid-template-columns:repeat(2,1fr)}.phase-dual-controls{grid-template-columns:1fr}.phase-dual-dpad{justify-self:center}}@media (prefers-reduced-motion:reduce){.phase-dual-loading-bar span,.phase-dual-loading-grid span{animation:none}.phase-dual-button,.phase-dual-dpad-button,.phase-dual-mode-tab,.phase-dual-piece-chip,.phase-dual-puzzle-chip,.phase-dual-tier-tab{transition:none}}.chart-studio-hero .muted{max-width:680px}.chart-studio-layout{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);grid-gap:18px;gap:18px;align-items:start}.chart-studio-control-stack,.chart-studio-preview-stack{display:grid;grid-gap:18px;gap:18px;min-width:0}.chart-studio-preview-panel{min-width:0}.chart-studio-data-input{min-height:280px}.chart-studio-compact-control{max-width:100%;overflow-x:auto}.chart-studio-drop-zone{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;min-height:86px;border:1px dashed rgba(125,211,252,.48);border-radius:var(--radius-sm);background:linear-gradient(135deg,rgba(20,184,166,.12),rgba(248,214,109,.07)),rgba(2,6,23,.28);padding:14px;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.chart-studio-drop-zone.is-dragging,.chart-studio-drop-zone:focus-within{border-color:rgba(248,214,109,.72);background:linear-gradient(135deg,rgba(248,214,109,.15),rgba(64,201,162,.11)),rgba(2,6,23,.35);box-shadow:0 0 0 3px rgba(248,214,109,.08)}.chart-studio-drop-zone span,.chart-studio-drop-zone strong{display:block}.chart-studio-drop-zone span{color:var(--muted);font-size:.88rem;line-height:1.45}.chart-studio-sample-row{display:flex;flex-wrap:wrap;gap:10px}.chart-studio-palette-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.chart-studio-palette-button{display:grid;grid-gap:8px;gap:8px;min-width:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(2,6,23,.28);color:var(--muted-strong);cursor:pointer;padding:10px;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.chart-studio-palette-button.is-active,.chart-studio-palette-button:hover{border-color:rgba(248,250,252,.42);background:rgba(226,232,240,.08);color:var(--text);transform:translateY(-1px)}.chart-studio-swatch-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:5px;gap:5px}.chart-studio-swatch-row span{height:10px;border-radius:999px}.chart-studio-slider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.chart-studio-slider{display:grid;grid-gap:8px;gap:8px;min-width:0;color:var(--muted-strong);font-size:.9rem}.chart-studio-slider input{width:100%;accent-color:#40c9a2}.chart-studio-toggle-grid{display:flex;flex-wrap:wrap;gap:10px}.chart-studio-toggle-grid label{display:inline-flex;gap:7px;align-items:center;border:1px solid var(--border);border-radius:999px;background:rgba(226,232,240,.04);color:var(--muted-strong);padding:8px 11px}.chart-studio-toggle-grid input{accent-color:#40c9a2}.chart-studio-canvas-wrap{width:100%;height:clamp(430px,52vw,620px);min-height:430px;overflow:hidden;border:1px solid rgba(148,163,184,.22);border-radius:var(--radius-md);background:#07111f}.chart-studio-canvas{display:block;width:100%;height:100%}.chart-studio-warning-list{display:grid;grid-gap:10px;gap:10px}@media (max-width:980px){.chart-studio-layout{grid-template-columns:1fr}.chart-studio-preview-stack{order:-1}}@media (max-width:720px){.chart-studio-drop-zone,.chart-studio-palette-grid,.chart-studio-slider-grid,.utility-title-row .chart-studio-drop-zone{grid-template-columns:1fr}.chart-studio-canvas-wrap{height:480px}}.dongplayer-page{color:var(--text)}.dongplayer-hero{position:relative;display:flex;min-height:560px;overflow:hidden;border:1px solid rgba(232,198,106,.2);border-radius:8px;background-image:linear-gradient(90deg,rgba(8,10,8,.98),rgba(12,14,12,.88) 42%,rgba(12,14,12,.16)),url(/images/dongplayer/dongplayer-hero-capture.png);background-size:cover;box-shadow:0 28px 70px rgba(0,0,0,.34)}.dongplayer-hero:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,.035) 0 1px,transparent 1px 8px);opacity:.22;pointer-events:none}.dongplayer-hero-copy{position:relative;z-index:1;width:min(100%,590px);padding:56px}.dongplayer-kicker{margin:0;font-size:.82rem;font-weight:800;text-transform:uppercase}.dongplayer-download h2,.dongplayer-hero h1,.dongplayer-section h2{letter-spacing:0}.dongplayer-hero h1{margin:14px 0 18px;color:#f6f3ea;font-size:4.6rem;line-height:.96}.dongplayer-architecture p,.dongplayer-download p,.dongplayer-hero p:not(.dongplayer-kicker),.dongplayer-intro-copy p{color:#d4d0c4;line-height:1.7}.dongplayer-hero p:not(.dongplayer-kicker){max-width:560px;margin:0;font-size:1.08rem}.dongplayer-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.dongplayer-action,.dongplayer-download-link{display:inline-flex;min-height:44px;align-items:center;justify-content:center;border:1px solid rgba(232,198,106,.44);padding:11px 16px;font-weight:800;transition:border-color .16s ease,background .16s ease,transform .16s ease}.dongplayer-action:hover,.dongplayer-download-link:hover{transform:translateY(-1px)}.dongplayer-action-primary{background:#e8c66a;color:#211a05}.dongplayer-section{margin-top:52px}.dongplayer-section-head{display:grid;grid-gap:8px;gap:8px;margin-bottom:18px}.dongplayer-download h2,.dongplayer-section h2{margin:0;font-size:2rem;line-height:1.18}.dongplayer-intro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);grid-gap:22px;gap:22px;align-items:start}.dongplayer-intro-copy{display:grid;grid-gap:12px;gap:12px;min-width:0}.dongplayer-intro-copy h2{margin:0}.dongplayer-intro-copy p{margin:0;max-width:760px}.dongplayer-fact-grid,.dongplayer-feature-grid,.dongplayer-preview-grid{display:grid;grid-gap:14px;gap:14px}.dongplayer-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dongplayer-download,.dongplayer-fact,.dongplayer-feature-card,.dongplayer-preview-card{border:1px solid rgba(183,179,168,.18);border-radius:8px;background:rgba(17,18,17,.72);box-shadow:0 18px 42px rgba(0,0,0,.18)}.dongplayer-fact{display:grid;grid-gap:7px;gap:7px;min-height:92px;padding:16px}.dongplayer-fact dt{color:#b7b3a8;font-size:.78rem;font-weight:800}.dongplayer-fact dd{margin:0;color:#f6f3ea;font-size:1.08rem;font-weight:800}.dongplayer-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dongplayer-feature-card{position:relative;min-height:210px;overflow:hidden;padding:18px}.dongplayer-feature-card:before{content:"";position:absolute;top:0;right:0;left:0;height:3px;background:linear-gradient(90deg,#e8c66a,#75d6b2,#ff8e72)}.dongplayer-feature-card h3{margin:0 0 12px;color:#f6f3ea;font-size:1.15rem}.dongplayer-feature-card p,.dongplayer-preview-card figcaption span{color:#b7b3a8;line-height:1.58}.dongplayer-feature-card p{margin:0}.dongplayer-preview-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.dongplayer-preview-card{padding:18px}.dongplayer-preview-card figcaption{display:grid;grid-gap:8px;gap:8px}.dongplayer-preview-card figcaption strong{color:#f6f3ea;font-size:1.04rem}.dongplayer-preview-card figcaption span{display:block;font-size:.94rem}.dongplayer-preview-capture{object-fit:cover;object-position:top center}.dongplayer-phone,.dongplayer-preview-capture{width:min(100%,252px);aspect-ratio:9/18;justify-self:center;overflow:hidden;border:10px solid #050705;border-radius:30px;background:#050705;box-shadow:0 24px 42px rgba(0,0,0,.32)}.dongplayer-phone-screen{display:grid;grid-gap:12px;gap:12px;width:100%;height:100%;align-content:start;overflow:hidden;border-radius:20px;background:linear-gradient(180deg,rgba(37,40,36,.76),rgba(17,18,17,.98)),#111211;padding:20px 16px}.dongplayer-logo-line,.dongplayer-phone-title{color:#f6f3ea;font-size:1.08rem;font-weight:800}.dongplayer-logo-line span{color:#e8c66a}.dongplayer-chip-row,.dongplayer-marker-row,.dongplayer-stat-line{display:flex;flex-wrap:wrap;gap:6px}.dongplayer-chip-row span,.dongplayer-chip-row strong,.dongplayer-marker-row span,.dongplayer-stat-line span{border-radius:999px;padding:6px 9px;font-size:.72rem;line-height:1}.dongplayer-chip-row span,.dongplayer-marker-row span,.dongplayer-stat-line span{background:#252824;color:#b7b3a8}.dongplayer-chip-row strong{background:#e8c66a;color:#211a05}.dongplayer-track-row{display:grid;grid-template-columns:42px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;border-radius:8px;background:#252824;padding:9px}.dongplayer-track-row.is-active{background:#30342f}.dongplayer-album-art,.dongplayer-track-row i,.dongplayer-widget-art{display:grid;place-items:center;background:linear-gradient(135deg,#e8c66a,#75d6b2 54%,#ff8e72);color:#17130a;font-style:normal;font-weight:900}.dongplayer-track-row i{width:42px;height:42px;border-radius:8px}.dongplayer-notification strong,.dongplayer-track-row strong,.dongplayer-track-title,.dongplayer-widget strong{color:#f6f3ea}.dongplayer-notification span,.dongplayer-track-row span,.dongplayer-track-subtitle,.dongplayer-widget span{color:#b7b3a8}.dongplayer-track-row div{min-width:0}.dongplayer-track-row span,.dongplayer-track-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dongplayer-album-art{width:100%;aspect-ratio:1;border-radius:8px;font-size:5rem}.dongplayer-track-title{margin-top:8px;text-align:center;font-size:1.15rem;font-weight:900}.dongplayer-track-subtitle{text-align:center}.dongplayer-progress{height:7px;overflow:hidden;border-radius:999px;background:#30342f}.dongplayer-progress span{display:block;width:58%;height:100%;border-radius:inherit;background:#e8c66a}.dongplayer-control-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#f6f3ea;font-size:1.65rem;text-align:center}.dongplayer-control-row strong{display:grid;width:58px;height:58px;place-items:center;border-radius:999px;background:#e8c66a;color:#211a05;font-size:1.45rem}.dongplayer-widget-demo{display:grid;min-height:420px;align-content:center;grid-gap:18px;gap:18px}.dongplayer-notification,.dongplayer-widget{display:grid;align-items:center;border-radius:8px;background:#202124;box-shadow:0 20px 38px rgba(0,0,0,.3)}.dongplayer-widget{grid-template-columns:56px minmax(0,1fr) 34px 38px 34px;gap:10px;padding:14px}.dongplayer-widget-art{width:56px;height:56px;border-radius:8px}.dongplayer-widget div{min-width:0}.dongplayer-notification span,.dongplayer-notification strong,.dongplayer-widget span,.dongplayer-widget strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dongplayer-widget b{color:#f6f3ea;font-size:1.4rem;text-align:center}.dongplayer-notification{gap:6px;padding:18px}.dongplayer-architecture{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);grid-gap:24px;gap:24px;align-items:center}.dongplayer-architecture p{margin-bottom:0}.dongplayer-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:stretch}.dongplayer-flow span{position:relative;display:grid;min-height:96px;place-items:center;border:1px solid rgba(117,214,178,.26);border-radius:8px;background:linear-gradient(180deg,rgba(37,40,36,.9),rgba(17,18,17,.92)),#111211;color:#f6f3ea;font-size:.78rem;font-weight:800;line-height:1.28;padding:10px;text-align:center}.dongplayer-flow span:not(:last-child):after{content:"";position:absolute;top:50%;right:-9px;z-index:1;width:10px;height:2px;background:#75d6b2}.dongplayer-download{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:20px;gap:20px;align-items:center;margin-top:54px;padding:24px;background:linear-gradient(135deg,rgba(232,198,106,.12),rgba(117,214,178,.08) 52%,rgba(255,142,114,.1)),rgba(17,18,17,.82)}.dongplayer-download p{margin-bottom:0}.dongplayer-download code{border-radius:6px;background:rgba(0,0,0,.28);color:#f6f3ea;padding:2px 6px}.dongplayer-download-link{min-width:210px;background:#e8c66a;color:#211a05}.dongplayer-download-link[data-disabled=true]{border-color:rgba(183,179,168,.24);background:rgba(246,243,234,.1);color:#b7b3a8;pointer-events:none}@media (max-width:980px){.dongplayer-hero{min-height:520px;background-position:62%}.dongplayer-hero-copy{padding:42px}.dongplayer-hero h1{font-size:3.6rem}.dongplayer-architecture,.dongplayer-download,.dongplayer-intro-grid{grid-template-columns:1fr}.dongplayer-feature-grid,.dongplayer-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dongplayer-flow{grid-template-columns:1fr}.dongplayer-flow span:not(:last-child):after{top:auto;right:auto;bottom:-9px;left:50%;width:2px;height:10px}.dongplayer-download-link{justify-self:start}}@media (max-width:680px){.dongplayer-hero{min-height:490px;background-position:70%}.dongplayer-hero-copy{padding:28px 22px}.dongplayer-hero h1{font-size:3rem}.dongplayer-hero p:not(.dongplayer-kicker){font-size:1rem}.dongplayer-action,.dongplayer-download-link{width:100%}.dongplayer-section{margin-top:38px}.dongplayer-download h2,.dongplayer-section h2{font-size:1.55rem}.dongplayer-fact-grid,.dongplayer-feature-grid,.dongplayer-preview-grid{grid-template-columns:1fr}.dongplayer-widget{grid-template-columns:48px minmax(0,1fr) 28px 32px 28px;padding:12px}.dongplayer-widget-art{width:48px;height:48px}}@media (prefers-reduced-motion:reduce){.dongplayer-action,.dongplayer-download-link{transition:none}.dongplayer-action:hover,.dongplayer-download-link:hover{transform:none}}.dongplayer-page{min-height:100%;background:linear-gradient(180deg,#10130f,#101612 44%,#15130f);color:#f6f3ea}.dongplayer-shell{max-width:1240px}.dongplayer-hero{min-height:620px;align-items:center;border-color:rgba(117,214,178,.22);background-image:linear-gradient(90deg,rgba(7,9,7,.99),rgba(10,14,11,.92) 43%,rgba(10,14,11,.18)),url(/images/dongplayer/dongplayer-hero-capture.png);background-position:50%}.dongplayer-hero:after{background:linear-gradient(180deg,rgba(232,198,106,.1),transparent 32%),repeating-linear-gradient(180deg,rgba(255,255,255,.03) 0 1px,transparent 1px 9px);opacity:.28}.dongplayer-hero-copy{width:min(100%,620px);padding:64px}.dongplayer-kicker{color:#e8c66a;letter-spacing:0}.dongplayer-hero h1{margin:16px 0 18px;font-size:clamp(3.5rem,7vw,6.4rem);line-height:.9}.dongplayer-download p,.dongplayer-hero-lead,.dongplayer-positioning-copy p,.dongplayer-under-hood .dongplayer-section-head p{color:#d7d3c7;line-height:1.74}.dongplayer-hero-lead{max-width:580px;margin:0;font-size:1.13rem;word-break:keep-all}.dongplayer-hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 0;padding:0;list-style:none}.dongplayer-hero-pills li{border:1px solid rgba(117,214,178,.3);border-radius:999px;background:rgba(117,214,178,.1);color:#dff7ed;font-size:.84rem;font-weight:800;padding:8px 11px}.dongplayer-action,.dongplayer-download-link{border-radius:8px}.dongplayer-action-primary,.dongplayer-download-link{border-color:rgba(232,198,106,.84);background:#e8c66a;color:#211a05}.dongplayer-action-secondary{border-color:rgba(246,243,234,.24);background:rgba(246,243,234,.08);color:#f6f3ea}.dongplayer-section{margin-top:64px}.dongplayer-section-head{max-width:760px;margin-bottom:22px}.dongplayer-download h2,.dongplayer-section h2{color:#f6f3ea;font-size:clamp(1.8rem,3.2vw,2.65rem);word-break:keep-all}.dongplayer-positioning{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);grid-gap:22px;gap:22px;align-items:stretch}.dongplayer-positioning-copy{display:grid;align-content:center;grid-gap:14px;gap:14px;min-width:0}.dongplayer-positioning-copy h2,.dongplayer-positioning-copy p{margin:0}.dongplayer-audience-grid,.dongplayer-benefit-grid{display:grid;grid-gap:14px;gap:14px}.dongplayer-audience-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dongplayer-audience-card,.dongplayer-benefit-card,.dongplayer-download,.dongplayer-fact,.dongplayer-preview-card{border:1px solid rgba(216,213,196,.16);border-radius:8px;background:rgba(17,20,17,.78);box-shadow:0 18px 42px rgba(0,0,0,.18)}.dongplayer-audience-card,.dongplayer-benefit-card{min-height:190px;padding:20px}.dongplayer-audience-card h3,.dongplayer-benefit-card h3{margin:0 0 12px;color:#f6f3ea;font-size:1.18rem;word-break:keep-all}.dongplayer-audience-card p,.dongplayer-benefit-card p,.dongplayer-journey-list p,.dongplayer-preview-card figcaption span{color:#beb9ab;line-height:1.62;word-break:keep-all}.dongplayer-audience-card p,.dongplayer-benefit-card p,.dongplayer-journey-list p{margin:0}.dongplayer-benefit-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dongplayer-benefit-card{position:relative;overflow:hidden}.dongplayer-benefit-card:before{content:"";position:absolute;top:0;right:0;left:0;height:3px;background:linear-gradient(90deg,#e8c66a,#75d6b2,#ff8e72)}.dongplayer-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dongplayer-preview-card{display:grid;grid-gap:16px;gap:16px;align-content:start;margin:0;padding:16px}.dongplayer-preview-capture{width:min(100%,232px);border-color:#050705}.dongplayer-preview-card figcaption strong{font-size:1.08rem}.dongplayer-journey-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.68fr);grid-gap:24px;gap:24px;align-items:center}.dongplayer-journey-copy{min-width:0}.dongplayer-journey-list{display:grid;grid-gap:12px;gap:12px;margin:22px 0 0;padding:0;list-style:none}.dongplayer-journey-list li{display:grid;grid-template-columns:48px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start;border-bottom:1px solid rgba(216,213,196,.14);padding:0 0 14px}.dongplayer-journey-list li:last-child{border-bottom:0;padding-bottom:0}.dongplayer-journey-list li>span{display:grid;width:48px;height:48px;place-items:center;border-radius:8px;background:#75d6b2;color:#17130a;font-weight:900}.dongplayer-journey-list strong{display:block;margin-bottom:5px;color:#f6f3ea;font-size:1.08rem}.dongplayer-widget-feature{min-width:0}.dongplayer-widget-demo{min-height:330px}.dongplayer-notification,.dongplayer-widget{background:rgba(28,31,28,.94)}.dongplayer-under-hood{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);grid-gap:24px;gap:24px;align-items:start}.dongplayer-under-hood .dongplayer-section-head{margin-bottom:0}.dongplayer-fact-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dongplayer-fact{min-height:94px}.dongplayer-download{background:linear-gradient(135deg,rgba(232,198,106,.14),rgba(117,214,178,.1) 52%,rgba(255,142,114,.12)),rgba(17,20,17,.88)}@media (max-width:1100px){.dongplayer-audience-grid,.dongplayer-benefit-grid,.dongplayer-fact-grid,.dongplayer-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dongplayer-journey-section,.dongplayer-positioning,.dongplayer-under-hood{grid-template-columns:1fr}}@media (max-width:680px){.dongplayer-hero{min-height:560px;background-position:66%}.dongplayer-hero-copy{width:100%;max-width:100%;overflow:hidden;padding:30px 22px}.dongplayer-hero h1{font-size:3.35rem}.dongplayer-hero-lead{max-width:100%;font-size:1rem;overflow-wrap:break-word;word-break:normal}.dongplayer-action,.dongplayer-hero-actions{width:100%}.dongplayer-hero-pills{width:100%;max-width:100%}.dongplayer-hero-pills li{font-size:.78rem;padding:7px 9px}.dongvideo-page .dongplayer-hero-copy{max-width:335px}.dongvideo-page .dongplayer-hero-lead,.dongvideo-page .dongplayer-hero-pills{max-width:315px}.dongplayer-audience-grid,.dongplayer-benefit-grid,.dongplayer-fact-grid,.dongplayer-preview-grid{grid-template-columns:1fr}.dongplayer-audience-card,.dongplayer-benefit-card{min-height:0}}.dongvideo-hero{border-color:rgba(125,183,255,.2);background-image:linear-gradient(90deg,rgba(7,9,9,.98),rgba(12,14,13,.88) 42%,rgba(12,14,13,.16)),url(/images/dongvideo/dongvideo-hero.svg)}.dongvideo-video-row{display:grid;grid-template-columns:58px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;border-radius:8px;background:#252824;padding:9px}.dongvideo-video-row.is-active{background:#30342f}.dongvideo-pip-video,.dongvideo-video-row i,.dongvideo-widget-thumb{display:grid;place-items:center;background:linear-gradient(135deg,#ff8e72,#c7a2ff 52%,#75d6b2);color:#10120f;font-style:normal;font-weight:900}.dongvideo-video-row i{width:58px;height:36px;border-radius:8px}.dongvideo-video-row div{min-width:0}.dongvideo-video-row span,.dongvideo-video-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dongvideo-video-row strong{color:#f6f3ea}.dongvideo-video-row span{color:#b7b3a8}.dongvideo-landscape-player{display:grid;min-height:420px;align-content:center}.dongvideo-video-stage{position:relative;display:grid;min-height:235px;overflow:hidden;align-content:space-between;border:10px solid #050705;border-radius:24px;background:linear-gradient(135deg,rgba(255,142,114,.62),rgba(199,162,255,.5),rgba(117,214,178,.56)),#090909;box-shadow:0 24px 42px rgba(0,0,0,.32);padding:16px}.dongvideo-video-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.46),transparent 32%,rgba(0,0,0,.62)),repeating-linear-gradient(180deg,rgba(255,255,255,.06) 0 1px,transparent 1px 9px);pointer-events:none}.dongvideo-video-stage>*{position:relative;z-index:1}.dongvideo-secondary-row,.dongvideo-video-controls,.dongvideo-video-topbar{display:flex;align-items:center;gap:8px}.dongvideo-video-topbar{justify-content:space-between;color:#f6f3ea;font-weight:800}.dongvideo-secondary-row span,.dongvideo-video-topbar b{border-radius:999px;background:rgba(0,0,0,.44);color:#f6f3ea;font-size:.72rem;padding:6px 9px}.dongvideo-play-symbol{justify-self:center;align-self:center;display:grid;width:78px;height:78px;place-items:center;border-radius:999px;background:rgba(0,0,0,.48);color:#f6f3ea;font-size:2rem}.dongvideo-subtitle{justify-self:center;max-width:88%;border-radius:8px;background:rgba(0,0,0,.56);color:#f6f3ea;font-weight:800;padding:8px 12px;text-align:center}.dongvideo-video-controls{color:#d4d0c4;font-size:.78rem}.dongvideo-video-controls div{flex:1 1;height:7px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.5)}.dongvideo-video-controls i{display:block;width:42%;height:100%;border-radius:inherit;background:#e8c66a}.dongvideo-secondary-row{flex-wrap:wrap}.dongvideo-widget-demo{min-height:420px}.dongvideo-pip-card{display:grid;grid-template-columns:112px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:center;border-radius:8px;background:#111211;box-shadow:0 20px 38px rgba(0,0,0,.3);padding:14px}.dongvideo-pip-video{aspect-ratio:16/9;border-radius:8px}.dongvideo-pip-card span,.dongvideo-pip-card strong{display:block}.dongvideo-pip-card strong{color:#f6f3ea}.dongvideo-pip-card span{color:#b7b3a8}.dongvideo-widget-thumb{width:56px;height:38px;border-radius:8px}.dongvideo-flow span{border-color:rgba(125,183,255,.26)}.dongvideo-flow span:not(:last-child):after{background:#7db7ff}.dongvideo-page{background:linear-gradient(180deg,#111211,#111511 46%,#171410)}.dongvideo-page .dongplayer-kicker{color:#ffbc80}.dongvideo-hero{border-color:rgba(255,188,128,.22);background-image:linear-gradient(90deg,rgba(7,8,7,.99),rgba(12,13,12,.92) 43%,rgba(12,13,12,.16)),url(/images/dongvideo/dongvideo-hero-capture.png);background-size:cover}.dongvideo-page .dongplayer-hero-pills li{border-color:rgba(255,188,128,.32);background:rgba(255,188,128,.11);color:#ffe0c0}.dongvideo-page .dongplayer-action-primary,.dongvideo-page .dongplayer-download-link{border-color:rgba(255,188,128,.84);background:#ffbc80;color:#211105}.dongvideo-page .dongplayer-action-secondary{border-color:rgba(125,183,255,.28);background:rgba(125,183,255,.1)}.dongvideo-page .dongplayer-benefit-card:before{background:linear-gradient(90deg,#ffbc80,#7db7ff,#75d6b2)}.dongvideo-page .dongplayer-journey-list li>span{background:#ffbc80;color:#211105}.dongvideo-page .dongplayer-preview-capture{width:min(100%,230px);aspect-ratio:9/20;border-color:#050605;object-position:top center}.dongvideo-page .dongplayer-download{background:linear-gradient(135deg,rgba(255,188,128,.14),rgba(125,183,255,.1) 52%,rgba(117,214,178,.12)),rgba(17,20,17,.88)}.dongvideo-continuity-panel{display:grid;grid-gap:14px;gap:14px;min-height:330px;align-content:center;border:1px solid rgba(216,213,196,.16);border-radius:8px;background:radial-gradient(circle at 85% 8%,rgba(125,183,255,.16),transparent 34%),radial-gradient(circle at 12% 18%,rgba(255,188,128,.16),transparent 34%),rgba(17,20,17,.78);box-shadow:0 18px 42px rgba(0,0,0,.18);padding:18px}.dongvideo-signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.dongvideo-signal-card,.dongvideo-signal-strip{border:1px solid rgba(216,213,196,.14);border-radius:8px;background:rgba(28,31,28,.88)}.dongvideo-signal-card{display:grid;grid-gap:8px;gap:8px;padding:16px}.dongvideo-signal-card.is-primary{min-height:142px;background:linear-gradient(135deg,rgba(255,188,128,.2),rgba(125,183,255,.12)),rgba(28,31,28,.9)}.dongvideo-signal-card span,.dongvideo-signal-strip span{color:#ffbc80;font-size:.78rem;font-weight:900;text-transform:uppercase}.dongvideo-signal-card strong{color:#f6f3ea;font-size:1.18rem}.dongvideo-signal-card p{margin:0;color:#bdb8aa;line-height:1.5}.dongvideo-signal-strip{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:14px 16px}@media (max-width:680px){.dongvideo-hero{background-position:69%}.dongvideo-pip-card{grid-template-columns:96px minmax(0,1fr)}.dongvideo-widget-thumb{width:48px;height:32px}.dongvideo-signal-grid{grid-template-columns:1fr}}