:root{--ink:#292523;--muted:#89817b;--paper:#fbf8f4;--white:#fffefd;--rose:#d99ca2;--rose-dark:#a66d75;--rose-wash:#f5e5e2;--line:#eee8e2;--green:#66816d;--serif:'Iowan Old Style','Palatino Linotype','Book Antiqua',Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px var(--sans);-webkit-font-smoothing:antialiased}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;background:#fffefd;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:29px 19px 20px;z-index:4}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);padding:0 8px 30px}.brand-mark{font-family:var(--serif);font-size:19px;line-height:.69;letter-spacing:-2px;color:white;background:linear-gradient(155deg,#f4cbcb,#cf8e96);border-radius:13px;width:43px;height:43px;display:flex;align-items:center;justify-content:center;display:block;padding:11px 0 0 8px;position:relative}.ring{position:absolute;font:20px Arial;left:21px;top:11px}.brand-e{margin-left:0}.brand-name{font-size:12px;letter-spacing:3px;font-weight:600}.couple{display:flex;align-items:center;gap:11px;padding:15px 9px 24px;border-bottom:1px solid var(--line)}.couple strong,.couple small{display:block}.couple strong{font-size:12px;font-weight:600}.couple small{font-size:10px;color:var(--muted);margin-top:4px}.avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#eee0d6;color:#806458;font-size:10px;font-weight:600;flex:none}.avatar.small{width:32px;height:32px}.icon-button{margin-left:auto;border:0;background:none;font-size:17px;color:#918983}.main-nav{padding:20px 0;display:grid;gap:5px}.main-nav a{height:42px;padding:0 12px;display:flex;gap:13px;align-items:center;border-radius:9px;text-decoration:none;color:#6e6863;font-size:12px}.main-nav a span{font-size:17px;width:19px;text-align:center}.main-nav a.active{background:#f6eeeb;color:#81565c;font-weight:600}.main-nav i{font-style:normal;margin-left:auto;font-size:10px;background:#d9a1a5;color:white;border-radius:20px;padding:3px 7px}.main-nav i.soft-count{background:#f5eeea;color:#9a8b80}.sidebar-bottom{margin-top:auto}.planner-mini{padding:16px 14px;background:#faf4f0;border-radius:12px}.eyebrow{font-size:9px;letter-spacing:1.7px;color:#a77a73;font-weight:600}.planner-mini p{font:14px/1.5 var(--serif);margin:10px 0 11px;color:#514541}.text-link{background:none;border:0;color:#9a676e;font:500 11px var(--sans);padding:0;cursor:pointer}.text-link span{margin-left:7px}.help-link{padding:21px 8px 0;color:#ae8181;font-size:14px}.help-link span{margin-left:7px;font-size:10px;color:#9c938d}.main-content{margin-left:258px;max-width:1440px;padding:0 48px 60px}.topbar{height:70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.save-note{font-size:10px;color:#928a83;display:flex;align-items:center;gap:8px}.live-dot{width:6px;height:6px;background:#7c9a7c;border-radius:50%}.top-actions{display:flex;align-items:center;gap:14px}.quiet-button{border:1px solid #e7deda;background:#fffdfa;color:#78625c;border-radius:8px;padding:9px 12px;font:500 10px var(--sans);cursor:pointer}.mobile-brand{display:none}.page{max-width:1130px;margin:0 auto}.welcome{display:flex;justify-content:space-between;align-items:flex-end;padding:32px 0 26px}.kicker{font-size:10px;letter-spacing:1.5px;color:#a47a74;text-transform:uppercase;font-weight:600}.welcome h1,.view-heading h1{font:400 33px/1.15 var(--serif);letter-spacing:-.4px;margin:9px 0 7px}.welcome p,.view-heading p{margin:0;color:var(--muted);font-size:12px}.wedding-meta{display:flex;gap:16px;align-items:center;color:#746c66;font-size:10px}.wedding-meta span{display:flex;align-items:center;gap:6px}.hero{height:254px;border-radius:13px;overflow:hidden;position:relative;background:linear-gradient(90deg,rgba(28,31,27,.55),rgba(28,31,27,.08) 80%),url("/wedding-hero.jpg") center 56%/cover;color:#fff;display:flex;align-items:flex-end;padding:27px 30px}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(36,36,31,.15),transparent 72%)}.hero-art{position:absolute;inset:0;opacity:0;background:none}.hero-art:before{content:"";position:absolute;right:13%;bottom:0;width:44%;height:74%;background:repeating-linear-gradient(90deg,rgba(45,68,50,.54) 0 6px,transparent 6px 25px);clip-path:polygon(0 35%,12% 35%,12% 0,19% 0,19% 35%,43% 35%,43% 0,50% 0,50% 35%,67% 35%,67% 0,74% 0,74% 35%,100% 35%,100% 100%,0 100%);opacity:.35}.hero-copy{position:relative;z-index:1}.hero-copy .eyebrow{color:#f8e2d6}.hero h2{font:400 27px var(--serif);margin:9px 0}.hero p{font-size:11px;margin:0;color:#fff9f1}.hero-detail{position:absolute;right:25px;bottom:24px;z-index:1;border:1px solid #ffffff82;border-radius:30px;padding:9px 13px;color:white;font-size:10px;background:#ffffff17;backdrop-filter:blur(8px)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(250px,.88fr);gap:17px;margin-top:18px}.panel{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px 21px}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel-header h3{font:500 17px var(--serif);margin:0}.panel-header a,.small-link{border:0;background:none;color:#a16d71;font:500 10px var(--sans);text-decoration:none;cursor:pointer}.panel-sub{font-size:10px;color:var(--muted);margin:-6px 0 15px}.allocation{display:flex;justify-content:space-between;align-items:baseline;font-size:10px;color:#827973}.allocation strong{font-size:15px;color:#48413d;font-weight:500}.progress{height:6px;border-radius:10px;background:#f1ece8;margin:11px 0 16px;overflow:hidden}.progress span{display:block;height:100%;width:68%;background:linear-gradient(90deg,#bd8283,#dfb9ad);border-radius:10px}.budget-breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.budget-stat{background:#fbf7f3;border-radius:8px;padding:10px 11px}.budget-stat span{display:block;color:#988e87;font-size:9px}.budget-stat strong{display:block;margin-top:5px;font-size:12px;font-weight:500}.category-list{display:grid}.category-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid #f1ece7}.category-row:last-child{border:0}.category-title{display:flex;align-items:center;gap:9px;font-size:10px}.category-icon{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:#f6eeea;color:#9c6b69;font-size:12px}.category-budget{font-size:10px;color:#746a64}.category-count{font-size:9px;color:#9a918a;width:70px;text-align:right}.task-list{display:grid;gap:12px}.task{display:flex;align-items:flex-start;gap:10px}.task-dot{width:17px;height:17px;border-radius:50%;border:1px solid #dbc9c0;color:#b7847e;display:grid;place-items:center;font-size:10px;flex:none}.task strong{font-size:10px;font-weight:500;display:block}.task small{font-size:9px;color:#9a918a;display:block;margin-top:4px}.task.completed strong{text-decoration:line-through;color:#aaa19b}.recommendation{display:grid;grid-template-columns:52px 1fr auto;gap:11px;align-items:center;border-top:1px solid #f0e9e4;padding:12px 0}.recommendation:first-of-type{border:0}.vendor-photo{width:52px;height:51px;border-radius:8px;background:linear-gradient(145deg,#d5dfd1,#8a9b7c 58%,#c8a999);display:grid;place-items:center;color:#fff;font-size:15px}.vendor-photo.flower{background:linear-gradient(145deg,#f4e5dd,#c58383 58%,#879275)}.vendor-photo.photo{background:linear-gradient(145deg,#e7d7c9,#a68b77 58%,#38453e)}.recommendation strong{display:block;font-size:10px;font-weight:600}.recommendation small{display:block;color:#958b84;font-size:9px;margin-top:4px}.match{background:#f2f5f0;color:#617966;border-radius:20px;padding:6px 8px;font-size:9px;font-weight:600;white-space:nowrap}.match.unknown{background:#f5f0ec;color:#877a6e;font-weight:500}.evidence{font-size:9px;color:#998f88;display:flex;gap:6px;align-items:center;margin-top:4px}.evidence:before{content:'◉';font-size:9px;color:#9c7770}.style-strip{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.pill{border:1px solid #eaded8;background:#fdf9f5;border-radius:30px;padding:7px 11px;font-size:9px;color:#75655d}.inspo-row{display:flex;gap:10px}.inspo-card{height:94px;flex:1;border-radius:8px;background:linear-gradient(145deg,#d9c2ae,#fcf3e5 40%,#828d70 100%);position:relative;overflow:hidden}.inspo-card:nth-child(2){background:linear-gradient(160deg,#a7b19c,#f1e5d8 47%,#8e675d)}.inspo-card:nth-child(3){background:linear-gradient(145deg,#e9d9d0,#fff6eb 35%,#b5a084)}.inspo-card:nth-child(4){background:linear-gradient(135deg,#d3dfd2,#f7eee1 48%,#a58377)}.inspo-card span{position:absolute;bottom:7px;left:7px;color:white;text-shadow:0 1px 4px #555;font-size:9px}.view-heading{padding:34px 0 22px}.view-heading .heading-row{display:flex;justify-content:space-between;align-items:center}.vendor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vendor-card{padding:14px;background:#fff;border:1px solid var(--line);border-radius:11px;display:grid;grid-template-columns:78px 1fr;gap:13px}.vendor-cover{border-radius:8px;background:linear-gradient(150deg,#e9d4c6,#f4ede5 47%,#73806b);min-height:94px}.vendor-cover.v2{background:linear-gradient(150deg,#dfc6b7,#f6eee7 55%,#af7a73)}.vendor-cover.v3{background:linear-gradient(150deg,#9aa78d,#eddfcf 50%,#536353)}.vendor-cover.v4{background:linear-gradient(150deg,#e7d9c8,#cab39d 48%,#77765b)}.vendor-card h4{font:15px var(--serif);margin:0 0 5px}.vendor-card p{font-size:9px;color:#8c8179;margin:0 0 8px}.vendor-card .chips{display:flex;gap:5px;flex-wrap:wrap}.vendor-card .chips span{font-size:8px;background:#f6f0ea;border-radius:20px;padding:4px 7px;color:#796e65}.vendor-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.vendor-card footer button{border:0;background:none;color:#9e6970;cursor:pointer;font-size:10px}.notice{background:#faf4f0;border:1px solid #efe3dc;padding:12px 14px;border-radius:9px;color:#82736a;font-size:10px;line-height:1.5;margin:14px 0}.view-budget{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.bar-row{display:grid;grid-template-columns:105px 1fr 76px;gap:10px;align-items:center;margin:13px 0;font-size:10px}.bar{height:7px;background:#f0ebe7;border-radius:20px;overflow:hidden}.bar span{height:100%;display:block;border-radius:20px;background:#d5a1a0}.bar-row .amount{text-align:right;color:#746a64}.chat-panel{max-width:750px}.chat-bubble{max-width:85%;padding:14px 16px;background:#f8f2ed;border-radius:3px 13px 13px 13px;font:14px/1.6 var(--serif);color:#514640;margin:10px 0}.chat-bubble.user{margin-left:auto;background:#f1e1df;border-radius:13px 3px 13px 13px}.chat-form{display:flex;gap:8px;border:1px solid var(--line);border-radius:9px;padding:8px;margin-top:20px}.chat-form input{flex:1;border:0;outline:0;padding:6px;font:11px var(--sans);background:transparent}.chat-form button,.primary-button{border:0;border-radius:7px;padding:10px 14px;color:white;background:#98686d;font:500 10px var(--sans);cursor:pointer}.empty-note{padding:38px;text-align:center;color:#928881;font:16px var(--serif)}.modal-backdrop{position:fixed;inset:0;background:#2a231f66;display:grid;place-items:center;z-index:10;padding:18px}.modal{width:min(560px,100%);background:var(--white);border-radius:16px;padding:26px;box-shadow:0 18px 80px #2d211f30}.modal-top{display:flex;justify-content:space-between;align-items:center}.modal-top button{background:none;border:0;font-size:22px;color:#89817b;cursor:pointer}.modal h2{font:400 27px var(--serif);margin:8px 0}.modal p{font-size:11px;line-height:1.55;color:#8f857e}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:17px 0}.form-grid label{font-size:9px;color:#82766f;display:grid;gap:6px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #e9e1dc;background:#fffdfa;border-radius:7px;padding:10px;font:11px var(--sans);color:#443d39}.form-grid .full{grid-column:1/-1}.form-grid textarea{min-height:66px;resize:vertical}.form-footer{display:flex;justify-content:space-between;align-items:center}.steps{font-size:9px;color:#978d86}.choice-row{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}.choice{border:1px solid #e9dfd8;background:#fffdfb;border-radius:20px;padding:8px 11px;font:10px var(--sans);color:#766a63;cursor:pointer}.choice.selected{background:#f3e5e2;border-color:#d3aaa8;color:#8d5f63}.dropzone{height:93px;border:1px dashed #d5c4b9;border-radius:8px;display:grid;place-items:center;text-align:center;color:#9b8d83;font-size:10px;margin:12px 0;cursor:pointer}.dropzone strong{display:block;font-weight:500;color:#79685f;margin-bottom:4px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:11px 15px;background:#4f6454;color:white;border-radius:30px;font-size:10px;z-index:20;box-shadow:0 8px 25px #342c2740}@media(max-width:950px){.sidebar{width:220px}.main-content{margin-left:220px;padding:0 25px 45px}.dashboard-grid{grid-template-columns:1fr}.hero{height:220px}.recommendation{grid-template-columns:49px 1fr auto}}@media(max-width:680px){.sidebar{display:none}.main-content{margin:0;padding:0 17px 40px}.topbar{height:58px}.mobile-brand{display:block;font-size:11px;letter-spacing:3px;font-weight:600}.save-note{font-size:9px}.top-actions .quiet-button{font-size:9px;padding:8px}.top-actions .avatar{display:none}.welcome{padding:26px 0 20px;display:block}.welcome h1,.view-heading h1{font-size:29px}.wedding-meta{margin-top:15px;flex-wrap:wrap;gap:11px}.hero{height:196px;padding:20px}.hero h2{font-size:22px}.hero-detail{right:13px;bottom:13px;padding:7px 9px;font-size:8px}.dashboard-grid{gap:12px;margin-top:12px}.panel{padding:17px}.budget-breakdown{gap:6px}.budget-stat{padding:9px 8px}.vendor-grid{grid-template-columns:1fr}.view-budget{grid-template-columns:1fr}.inspo-card{height:76px}.category-count{width:auto}.view-heading{padding:24px 0 18px}.welcome p,.view-heading p{font-size:11px}}
