@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;700&display=swap";:root{--primary:#333;--primary-hover:#1f1f1f;--accent:#ff8162;--accent-strong:#d66245;--accent-soft:#fff0eb;--bg-main:#f6f1ed;--bg-warm:#fefaf7;--surface:#ffffffeb;--surface-muted:#f4ece7;--text-primary:#1a1c1a;--text-secondary:#303330;--text-tertiary:#5d605c;--border:#3333331a;--border-strong:#3333332e;--success:#4caf50;--warning:#ff9800;--error:#e53935;--font-heading:"Space Grotesk", sans-serif;--font-body:"Manrope", sans-serif;--shadow-sm:0 10px 24px #3e2d230f;--shadow-md:0 18px 38px #3e2d2314;--shadow-lg:0 30px 80px #3e2d231f;font-family:var(--font-body);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text-primary);background-color:var(--bg-main);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at top left, #ff81622e, transparent 28%), radial-gradient(circle at bottom right, #33333314, transparent 25%), linear-gradient(180deg, var(--bg-warm), var(--bg-main));min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.025em;color:var(--text-primary);font-weight:700}#root{width:100%;max-width:1440px;margin:0 auto;padding:1.5rem}a{color:var(--primary);-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}a:hover{color:var(--primary-hover)}button{background-color:var(--primary);color:#fff;cursor:pointer;box-shadow:var(--shadow-md);border:1px solid #0000;border-radius:12px;padding:.85rem 1.25rem;font-family:inherit;font-size:1em;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}button:hover{background-color:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}button:active{transform:translateY(0)}button:focus,button:focus-visible{outline-offset:2px;outline:3px solid #ff816259}.glass-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:12px}.gradient-text{background:linear-gradient(120deg, var(--primary) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.6s ease-out forwards fadeIn}@media (width<=768px){#root{padding:1rem}}.excel-uploader-container{width:100%;margin:0 auto}.source-entry{gap:1rem;display:grid}.dropzone,.results-display{width:100%}.dropzone{text-align:center;cursor:pointer;border:2px dashed var(--border-strong);background:linear-gradient(#fffffff5,#fff8f4f5);padding:2.4rem 1.4rem;transition:all .3s}.dropzone.dragging{border-color:var(--accent);background:#ff816214;transform:translateY(-2px)}.dropzone.loading{cursor:wait}.upload-icon{width:2.5rem;height:2.5rem;color:var(--accent);margin-bottom:.8rem}.dropzone-content h3{margin-bottom:.35rem;font-size:1.3rem}.dropzone-content p{color:var(--text-secondary)}.dropzone-note{color:var(--text-tertiary);margin-top:.9rem;font-size:.92rem;display:inline-block}.sheet-link-panel{padding:1.1rem 1.2rem 1.2rem}.sheet-link-header{align-items:flex-start;gap:.8rem;margin-bottom:.9rem;display:flex}.sheet-link-icon{margin-bottom:0}.sheet-link-header h3{margin-bottom:.25rem;font-size:1.05rem}.sheet-link-header p{color:var(--text-secondary)}.sheet-link-form{grid-template-columns:minmax(0,1fr) auto;gap:.75rem;display:grid}.sheet-link-form input{border:1px solid var(--border-strong);width:100%;min-width:0;color:var(--text-primary);font:inherit;background:#fff;border-radius:12px;padding:.85rem .95rem}.sheet-link-form input:focus{border-color:var(--accent);outline:3px solid #ff816233}.dropzone-error{color:#9f1d1d;background:#e5393514;border:1px solid #e5393533;border-radius:12px;margin-top:.8rem;padding:.8rem .9rem;font-weight:600}.results-display{text-align:left;padding:.9rem 1rem 5.5rem;position:relative}.results-header{border-bottom:1px solid #33333314;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding-bottom:.8rem;display:flex}.results-header p,.table-review-header p{color:var(--text-secondary)}.results-header p{align-items:center;gap:.5rem;display:inline-flex}.results-label{background:var(--surface-muted);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;margin-bottom:.55rem;padding:.35rem .7rem;font-size:.76rem;font-weight:700;display:inline-block}.review-banner{background:0 0;border-bottom:1px solid #ff816238;align-items:flex-start;gap:.85rem;margin-bottom:1rem;padding:0 0 .9rem;display:flex}.review-banner p{color:var(--text-secondary)}.banner-icon{color:var(--accent)}.inline-icon{flex-shrink:0;width:1rem;height:1rem}.summary-strip{border-bottom:1px solid #33333314;flex-wrap:wrap;gap:1.4rem;margin-bottom:1rem;padding-bottom:.9rem;display:flex}.summary-card{min-width:110px}.summary-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem;font-size:.8rem;font-weight:700;display:block}.summary-card strong{font-family:var(--font-heading);font-size:1.35rem}.results-list{border-top:1px solid #33333314;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;margin-bottom:1rem;display:grid}.result-item{background:0 0;border:none;border-bottom:1px solid #33333314;border-radius:0;align-items:center;gap:1rem;min-height:72px;padding:.9rem .2rem;display:flex}.result-item .icon{width:20px;height:20px}.result-item.ready .icon{color:var(--accent)}.result-item.success .icon{color:var(--success)}.result-item.error .icon{color:var(--error)}.result-item.skipped .icon{color:var(--warning)}.item-info{flex-direction:column;flex-grow:1;min-width:0;display:flex}.sheet-name{color:var(--text-primary);font-weight:600}.message{color:var(--text-tertiary);font-size:.85rem}.result-item .badge{flex-shrink:0}.sync-error{color:#9f1d1d;background:#e5393514;border:1px solid #e5393533;border-radius:12px;margin-bottom:1rem;padding:.8rem .9rem;font-weight:600}.table-review{background:0 0;border:none;border-radius:0;padding:.6rem 0 0}.table-review-header{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.75rem;display:flex}.table-count{color:var(--text-secondary);background:0 0;border:none;border-radius:999px;padding:.2rem 0;font-size:.85rem;font-weight:700}.table-tabs{flex-wrap:wrap;gap:.55rem;margin-bottom:.75rem;display:flex}.table-tab{color:var(--text-secondary);box-shadow:none;background:0 0;border:1px solid #0000;border-radius:999px;padding:.45rem .7rem}.table-tab:hover{background:#ff816214}.table-tab.active{color:var(--accent-strong);background:#ff81621f;border-color:#ff81622e}.table-wrapper{background:0 0;border-top:1px solid #33333314;border-bottom:1px solid #33333314;border-radius:0;overflow:auto}.table-wrapper table{border-collapse:collapse;width:100%;min-width:640px}.table-wrapper th,.table-wrapper td{text-align:left;vertical-align:top;border-bottom:1px solid #f0e5df;padding:.72rem .85rem;font-size:.88rem}.table-wrapper th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;background:#fbf7f4;font-size:.82rem;position:sticky;top:0}.table-wrapper tbody tr:hover{background:#ff81620d}.stacked-rows{flex-direction:column;gap:.55rem;display:flex}.stacked-row-card{background:0 0;border:none;border-bottom:1px solid #33333314;border-radius:0;align-items:center;gap:.85rem;padding:.75rem 0;display:flex}.stacked-row-index{background:var(--surface-muted);min-width:4rem;color:var(--text-secondary);border-radius:999px;justify-content:center;align-items:center;padding:.45rem .7rem;font-size:.8rem;font-weight:700;display:inline-flex}.stacked-row-body{flex:1;align-items:baseline;gap:.6rem;min-width:0;display:flex}.stacked-row-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;font-size:.78rem;font-weight:700}.stacked-row-body p{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;line-height:1.55}.empty-table{color:var(--text-tertiary);padding:1.25rem}.results-actions{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#f6f1ed00,#f6f1edeb 28%,#f6f1edfa);justify-content:flex-end;gap:1rem;margin-top:.9rem;padding:.9rem 0 .2rem;display:flex;position:sticky;bottom:0}.results-actions-bottom{position:sticky}.btn-secondary{border:1px solid var(--border-strong);color:var(--text-secondary);box-shadow:none;background:#fff}.btn-secondary:hover{background:var(--surface-muted);color:var(--text-primary)}.dialog-backdrop{background:#1a1c1a52;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--border);width:min(100%,460px);box-shadow:var(--shadow-lg);background:#fff;border-radius:12px;padding:1.5rem}.confirm-dialog h4{margin-bottom:.65rem;font-size:1.35rem}.confirm-dialog p{color:var(--text-secondary)}.dialog-actions{justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.spinner-container{flex-direction:column;align-items:center;gap:1rem;display:flex}.spinner{border:4px solid #3333331f;border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.summary-strip,.results-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.sheet-link-form{grid-template-columns:1fr}.results-header,.table-review-header,.results-actions{flex-direction:column;align-items:flex-start}.results-actions button,.dialog-actions button{width:100%}.dialog-actions{flex-direction:column-reverse}.results-list{grid-template-columns:1fr}.results-actions{padding-bottom:0}.stacked-row-card,.stacked-row-body{align-items:flex-start}.stacked-row-card{flex-direction:column}.stacked-row-body{flex-direction:column;gap:.3rem}}.admin-shell{flex-direction:column;gap:1rem;min-height:100%;display:flex}.hero-card{border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);background:radial-gradient(circle at 100% 0,#ff81622e,#0000 30%),linear-gradient(145deg,#fffffff5,#fbf8f5fa);border-radius:12px;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:1.5rem;padding:2rem;display:grid}.hero-card.compact{border-radius:12px;grid-template-columns:minmax(0,1.4fr) auto;gap:1rem;padding:1.2rem 1.35rem}.hero-copy{text-align:left;flex-direction:column;gap:.45rem;display:flex}.eyebrow,.section-label{background:var(--accent-soft);width:fit-content;color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;padding:.45rem .8rem;font-size:.78rem;font-weight:700;display:inline-flex}.hero-copy h1{color:var(--text-primary);font-size:clamp(1.85rem,4vw,2.8rem);line-height:.98}.hero-text{max-width:40rem;color:var(--text-secondary);font-size:.95rem}.hero-highlights{gap:1rem;display:grid}.hero-highlights.compact{flex-wrap:wrap;place-content:center flex-end;gap:.65rem;display:flex}.highlight-card,.mini-highlight{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#ffffffd1;border-radius:12px;align-items:flex-start;gap:1rem;padding:1.1rem 1.2rem;display:flex}.mini-highlight{white-space:nowrap;border-radius:999px;align-items:center;gap:.55rem;padding:.7rem .85rem}.mini-highlight span{color:var(--text-secondary);font-size:.88rem;font-weight:700}.highlight-card h2{margin-bottom:.25rem;font-size:1.05rem}.highlight-card p{color:var(--text-secondary);font-size:.92rem}.highlight-icon{width:1.2rem;height:1.2rem;color:var(--accent);flex-shrink:0}.admin-main{flex-direction:column;flex-grow:1;gap:1.5rem;display:flex}.workspace-card{box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;gap:1rem;padding:.85rem 1rem 1rem;display:flex}.section-heading{text-align:left;border-bottom:1px solid #33333314;justify-content:space-between;align-items:flex-end;gap:1rem;padding-bottom:.9rem;display:flex}.section-heading h2{margin-top:.45rem;font-size:1.35rem}.section-heading p{max-width:24rem;color:var(--text-secondary);text-align:right;font-size:.92rem}.footer{color:var(--text-tertiary);justify-content:space-between;align-items:center;margin-top:auto;padding:.2rem 0 0;font-size:.9rem;display:flex}.badge{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;padding:.45rem .8rem;font-size:.82rem;font-weight:700}@media (width<=768px){.hero-card{grid-template-columns:1fr;padding:1rem}.hero-highlights.compact{justify-content:flex-start}.section-heading,.footer{flex-direction:column;align-items:flex-start}.section-heading p{text-align:left}}
