:root{color:#f5f3ff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#100d18;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}html{background:#100d18}body{min-width:320px;min-height:100vh;margin:0}button,textarea,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.app-shell{background:#100d18;align-content:start;gap:.85rem;min-height:100vh;padding:1.25rem;display:grid}.app-header,.panel,.share-panel,.history-panel{width:min(100%,760px);margin:0 auto}.app-header{gap:.35rem;padding:.35rem 0 .15rem;display:grid}.eyebrow{color:#a78bfa;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:850}h1,h2,h3,p{margin-top:0}h1{color:#fff;letter-spacing:-.045em;margin-bottom:0;font-size:clamp(1.85rem,8vw,3rem);line-height:1}h2{color:#fff;margin-bottom:.25rem;font-size:clamp(1.35rem,6vw,2rem);line-height:1.05}h3{color:#ede9fe;margin-bottom:.35rem}.app-header p:not(.eyebrow),.sort-meta,.history-card p,.empty-state{color:#b8add2}.panel,.share-panel,.history-panel{background:#181321;border:1px solid #302743;border-radius:1.25rem;padding:1rem;box-shadow:0 1rem 2.5rem #00000042}form{gap:.8rem;display:grid}label{color:#ddd6fe;font-weight:800}textarea,.share-panel input{color:#fff;background:#100d18;border:1px solid #403454;border-radius:1rem;width:100%;padding:1rem}textarea{resize:vertical;min-height:14rem}textarea::placeholder{color:#7e7397}textarea:focus,.share-panel input:focus{border-color:#8b5cf6;outline:3px solid #8b5cf63d}.form-actions,.secondary-actions{flex-wrap:wrap;gap:.7rem;display:flex}.primary-button,.ghost-button,.danger-button{border-radius:999px;min-height:3rem;padding:.75rem 1rem;font-weight:850;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s}.primary-button{color:#fff;background:#8b5cf6;border:1px solid #9f7aea}.ghost-button,.danger-button{color:#ede9fe;background:#211a2d;border:1px solid #403454}.danger-button{color:#fecdd3}.compact-button{min-height:2.35rem;padding:.45rem .75rem;font-size:.9rem}.primary-button:hover:not(:disabled),.ghost-button:hover:not(:disabled),.danger-button:hover:not(:disabled),.choice-card:hover{transform:translateY(-1px);box-shadow:0 .7rem 1.4rem #00000038}.primary-button:focus-visible,.ghost-button:focus-visible,.danger-button:focus-visible,.choice-card:focus-visible{outline-offset:2px;outline:4px solid #a78bfa47}.sorting-panel{gap:1rem;display:grid}.progress-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.progress-header span{color:#c4b5fd;background:#241b33;border:1px solid #4c3b68;border-radius:999px;flex:none;padding:.35rem .65rem;font-size:.8rem;font-weight:900}.progress-track{background:#2c233d;border-radius:999px;width:100%;height:.6rem;overflow:hidden}.progress-track div{border-radius:inherit;background:#8b5cf6;height:100%;transition:width .18s}.card-grid{gap:.85rem;display:grid}.choice-card{color:#fff;text-align:center;word-break:break-word;background:#211a2d;border:1px solid #4c3b68;border-radius:1.25rem;place-items:center;min-height:10rem;padding:1.25rem;font-size:clamp(1.25rem,7vw,2.1rem);font-weight:900;display:grid}.choice-card span{color:#a78bfa;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.sort-meta{margin-bottom:0;font-size:.95rem}.result-list,.history-list{gap:.6rem;margin:1rem 0;padding-left:1.5rem;display:grid}.result-list li,.history-card{color:#f5f3ff;background:#100d18;border:1px solid #302743;border-radius:.95rem;padding:.8rem .9rem;font-weight:700}.history-panel{gap:.85rem;display:grid}.history-panel header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.history-list{padding-left:0;list-style:none}.history-card p{margin-bottom:.6rem;font-size:.92rem;font-weight:500}.history-card-header{justify-content:space-between;align-items:start;gap:.8rem;margin-bottom:.75rem;display:flex}.history-card ol{gap:.35rem;margin:0;padding-left:1.35rem;display:grid}.empty-state{margin-bottom:0}.share-panel{gap:.65rem;display:grid}.share-panel strong{color:#c4b5fd}@media (width>=720px){.app-shell{gap:1.25rem;padding:2rem}.app-header{padding-top:.75rem}.panel,.share-panel,.history-panel{padding:1.35rem}.card-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
