body{display:flex;min-height:100vh;flex-direction:column}.main{flex:1;padding:54px 0 72px}.intro{max-width:900px;margin:0 auto 32px;text-align:center}.breadcrumbs{margin-bottom:18px;color:var(--muted);font-size:.82rem}.breadcrumbs a{color:var(--primary);font-weight:750}.breadcrumbs span{margin:0 7px}.intro h1{margin:17px auto 14px;font-size:clamp(2.7rem,7vw,4.9rem)}
.generator-shell{display:grid;max-width:1080px;min-height:610px;margin:auto;padding:10px;grid-template-columns:minmax(0,1.45fr) minmax(330px,.78fr);border:1px solid var(--border);border-radius:30px;background:#ffffffb5;box-shadow:var(--shadow);overflow:hidden}
.color-stage{--color:#6c5ce7;--ink:#fff;position:relative;display:flex;min-width:0;flex-direction:column;justify-content:space-between;padding:27px;background:var(--color);border-radius:21px 0 0 21px;color:var(--ink);isolation:isolate;overflow:hidden;transition:background .5s cubic-bezier(.2,.8,.25,1),color .3s}.color-stage:before{position:absolute;inset:0;z-index:-3;background:radial-gradient(circle at 18% 12%,#ffffff38,transparent 38%),linear-gradient(145deg,transparent,#0000001a);content:""}.stage-top{display:flex;z-index:3;align-items:center;justify-content:space-between;gap:14px}.live-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #ffffff32;border-radius:999px;background:#ffffff18;backdrop-filter:blur(12px);font-size:.75rem;font-weight:800}.live-badge i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 5px #ffffff1c}.stage-icon-button{min-height:37px;padding:0 13px;border:1px solid #ffffff32;border-radius:11px;color:inherit;background:#ffffff18;font-size:.74rem;font-weight:850;backdrop-filter:blur(12px)}.stage-icon-button:hover{background:#ffffff2b}
.color-orbit{position:absolute;z-index:-1;border:1px solid #ffffff29;border-radius:50%;pointer-events:none}.color-orbit:before{position:absolute;width:12px;height:12px;border-radius:50%;background:#ffffffb8;box-shadow:0 0 28px #fff;content:""}.color-orbit-one{top:50%;left:50%;width:410px;height:410px;transform:translate(-50%,-50%);animation:spin 19s linear infinite}.color-orbit-one:before{top:42px;left:55px}.color-orbit-two{top:50%;left:50%;width:290px;height:290px;transform:translate(-50%,-50%);animation:spinBack 15s linear infinite}.color-orbit-two:before{right:-5px;bottom:95px;width:8px;height:8px}
.color-card{position:relative;z-index:2;width:min(86%,430px);margin:auto;padding:30px;border:1px solid #ffffff42;border-radius:27px;background:#ffffff1d;box-shadow:0 26px 70px #00000026;backdrop-filter:blur(18px);text-align:center;transition:transform .35s}.color-card.pop{animation:colorPop .55s cubic-bezier(.2,.8,.25,1)}.color-name{display:block;margin-bottom:11px;font-size:.78rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.color-value{display:block;width:100%;padding:0;border:0;color:inherit;background:transparent;font-size:clamp(2.45rem,7vw,4.6rem);font-weight:950;line-height:1;letter-spacing:-.055em;overflow-wrap:anywhere}.copy-hint{display:block;margin-top:12px;font-size:.69rem;font-weight:700;opacity:.72}.stage-actions{position:relative;z-index:3;display:flex;justify-content:center;gap:10px}.generate-button,.save-button{display:flex;min-height:55px;align-items:center;justify-content:center;gap:9px;padding:0 20px;border:1px solid #ffffff42;border-radius:16px;font-weight:900}.generate-button{min-width:210px;color:var(--color);background:var(--ink);box-shadow:0 17px 35px #00000020}.generate-button:hover{transform:translateY(-2px)}.generate-button:active{transform:scale(.98)}.generate-button kbd{padding:3px 7px;border:1px solid currentColor;border-radius:6px;font:700 .65rem/1.2 inherit;opacity:.55}.save-button{color:inherit;background:#ffffff1c;backdrop-filter:blur(12px)}.save-button.saved{background:#ffffff32}.save-button span{font-size:1.16rem}
.control-panel{padding:28px;border-radius:0 21px 21px 0;background:#fff}.panel-heading,.shelf-heading,.field-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.step-label,.field-title{color:var(--primary);font-size:.65rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.panel-heading h2,.shelf-heading h2{margin:5px 0 0;font-size:1.12rem}.reset-button,.text-button{border:0;color:var(--muted);background:transparent;font-size:.72rem;font-weight:800}.reset-button:hover,.text-button:hover{color:var(--primary)}
.mood-grid{display:grid;margin-top:18px;grid-template-columns:repeat(3,1fr);gap:8px}.mood-grid button{display:flex;min-width:0;min-height:66px;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:7px;border:1px solid var(--border);border-radius:13px;color:var(--muted);background:#fff;font-size:.7rem;font-weight:850}.mood-grid button:hover{border-color:#6c5ce74a;background:#faf9ff}.mood-grid button.active{color:var(--primary);border-color:#6c5ce75c;background:#f4f2ff;box-shadow:0 7px 18px #6c5ce714}.mood-grid i{display:block;width:25px;height:12px;border-radius:999px;box-shadow:inset 0 0 0 1px #0000000d}.mood-any{background:linear-gradient(90deg,#ff647c,#ffce54,#43d49d,#5f87ff,#ae64e9)}.mood-pastel{background:linear-gradient(90deg,#f8b8cc,#c5d8ff,#c8efd9)}.mood-vibrant{background:linear-gradient(90deg,#ff294d,#ffb000,#00bda1,#6c34ff)}.mood-dark{background:linear-gradient(90deg,#172033,#3d245c,#173d3a)}.mood-warm{background:linear-gradient(90deg,#ff503e,#ff9d2e,#ffd55a)}.mood-cool{background:linear-gradient(90deg,#14c7c9,#3478ed,#7954dc)}
.format-section{margin-top:24px}.field-title-row>span:last-child{color:var(--muted);font-size:.65rem}.format-list{display:grid;gap:7px;margin-top:10px}.format-list button{display:grid;min-height:48px;align-items:center;padding:0 11px;grid-template-columns:43px 1fr auto;gap:8px;border:1px solid var(--border);border-radius:12px;color:var(--text);background:#fff;text-align:left}.format-list button:hover,.format-list button.active{border-color:#6c5ce74d;background:#f8f7ff}.format-list button>span{color:var(--muted);font-size:.64rem;font-weight:900}.format-list strong{min-width:0;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.format-list i{color:var(--primary);font-size:.65rem;font-style:normal;font-weight:850;opacity:0}.format-list button:hover i,.format-list button.active i{opacity:1}
.contrast-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:13px;border-radius:14px;background:#f4f3fa}.contrast-card span,.contrast-card strong{display:block}.contrast-card strong{margin-top:4px;font-size:.73rem}.contrast-preview{display:grid;width:43px;height:43px;place-items:center;border-radius:12px;background:#6c5ce7;font-size:.92rem;font-weight:950}.privacy-note{display:flex;gap:8px;margin:14px 0 0;color:#3b756d;font-size:.67rem;font-weight:750;line-height:1.45}.privacy-note span{display:grid;width:18px;height:18px;flex:none;place-items:center;border-radius:50%;background:#00c2a817}
.color-shelf{max-width:1080px;margin:17px auto 0;padding:20px 22px;border:1px solid var(--border);border-radius:20px;background:#ffffffc2}.color-strip{display:grid;margin-top:15px;grid-template-columns:repeat(7,minmax(72px,1fr));gap:10px}.color-chip{position:relative;display:flex;min-width:0;height:74px;align-items:flex-end;padding:8px;border:0;border-radius:14px;color:var(--chip-ink);background:var(--chip);box-shadow:inset 0 0 0 1px #ffffff28;overflow:hidden;text-align:left;transition:.2s}.color-chip:hover{transform:translateY(-3px);box-shadow:0 10px 22px #25223c1c}.color-chip strong{max-width:100%;padding:4px 6px;border-radius:7px;background:#ffffff26;backdrop-filter:blur(7px);font-size:.65rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-colors{display:grid;min-height:74px;grid-column:1/-1;place-items:center;border:1px dashed var(--border);border-radius:14px;color:var(--muted);font-size:.75rem}.saved-shelf{border-color:#6c5ce726}.export-button{min-height:35px;padding:0 12px;border:1px solid #6c5ce72d;border-radius:10px;color:var(--primary);background:#f4f2ff;font-size:.69rem;font-weight:850}
.content-section{padding:68px 0}.content-section.alt{border-block:1px solid #1f223e0f;background:#ffffff7a}.content{max-width:920px;margin:auto}.section-label{color:var(--primary);font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.content h2{margin:7px 0 13px;font-size:clamp(1.75rem,4vw,2.4rem)}.content>p,.info-card p,.step p,.format-guide p,.faq p{color:var(--muted);line-height:1.75}.info-grid,.steps,.format-guide,.try-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:25px}.info-card,.step,.format-guide article{padding:22px;border:1px solid var(--border);border-radius:18px;background:#fff}.info-card>span{color:var(--primary);font-size:.65rem;font-weight:900;letter-spacing:.09em}.info-card h3,.step h3,.format-guide h3{margin:8px 0;font-size:1rem}.info-card p,.step p,.format-guide p{margin:0;font-size:.87rem}.step>span{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;color:#fff;background:var(--primary);font-size:.78rem;font-weight:900}.format-guide article>strong{display:block;min-height:43px;color:var(--primary);font-size:clamp(.9rem,2vw,1.08rem);overflow-wrap:anywhere}.faq{display:grid;gap:11px;margin-top:23px}.faq details{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#fff}.faq summary{padding:17px 19px;cursor:pointer;font-weight:850}.faq p{margin:0;padding:0 19px 18px}.try-head h2{margin-bottom:0}.try-head p{margin:5px 0 0;color:var(--muted)}.try-card{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid var(--border);border-radius:17px;background:#fff;transition:.2s}.try-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px #35316e1a}.try-icon{display:grid;width:43px;height:43px;flex:none;place-items:center;border-radius:13px;color:var(--primary);background:#f0eeff;font-size:.7rem;font-weight:900}.try-card strong,.try-card small{display:block}.try-card small{margin-top:3px;color:var(--muted)}
.fullscreen-preview{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;color:var(--full-ink,#fff);background:var(--full-color,#6c5ce7)}.fullscreen-preview[hidden]{display:none}.fullscreen-preview>button{position:absolute;top:24px;right:24px;width:48px;height:48px;border:1px solid #ffffff3b;border-radius:14px;color:inherit;background:#ffffff1c;font-size:1.8rem}.fullscreen-preview>div{text-align:center}.fullscreen-preview span,.fullscreen-preview small{display:block}.fullscreen-preview span{font-weight:800;letter-spacing:.1em;text-transform:uppercase}.fullscreen-preview strong{display:block;margin:12px 0;font-size:clamp(4rem,15vw,11rem);letter-spacing:-.07em}.fullscreen-preview small{opacity:.7}.toast{position:fixed;z-index:1100;right:22px;bottom:22px;padding:13px 17px;border-radius:13px;color:#fff;background:#25223d;box-shadow:0 16px 38px #25223d38;font-size:.78rem;font-weight:800;opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s}.toast.show{opacity:1;transform:none}.color-spark{position:absolute;z-index:10;width:8px;height:8px;border-radius:3px;background:#fff;pointer-events:none;animation:spark .8s ease-out forwards}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes spinBack{to{transform:translate(-50%,-50%) rotate(-360deg)}}@keyframes colorPop{0%{opacity:.35;transform:scale(.9) rotate(-1deg)}100%{opacity:1;transform:none}}@keyframes spark{to{opacity:0;transform:translate(var(--x),var(--y)) rotate(240deg)}}
@media(max-width:850px){.generator-shell{grid-template-columns:1fr}.color-stage{min-height:540px;border-radius:21px 21px 0 0}.control-panel{border-radius:0 0 21px 21px}.info-grid,.steps,.format-guide,.try-grid{grid-template-columns:1fr}.color-strip{grid-template-columns:repeat(4,1fr)}}@media(max-width:560px){.main{padding:39px 0 55px}.generator-shell{padding:7px;border-radius:24px}.color-stage{min-height:490px;padding:20px;border-radius:18px 18px 0 0}.control-panel{padding:23px;border-radius:0 0 18px 18px}.color-card{width:96%;padding:25px 13px}.color-value{font-size:clamp(2.35rem,14vw,3.5rem)}.stage-actions{width:100%}.generate-button{min-width:0;flex:1}.generate-button kbd{display:none}.save-button{padding:0 15px}.color-strip{grid-template-columns:repeat(3,1fr)}.color-shelf{padding:18px}.shelf-heading{align-items:flex-start}.content-section{padding:53px 0}}@media(prefers-reduced-motion:reduce){.color-orbit,.color-card.pop,.color-spark{animation-duration:.01ms!important}.color-stage{transition:none}}
