@import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&display=swap');
:root{--green:#1f4d3a;--green2:#146044;--leaf:#7cc56b;--orange:#ff8a3d;--purple:#a78bfa;--cream:#f8f4ed;--paper:#fffdf9;--ink:#153b30;--muted:#737b75;--line:#dfe4dc;--shadow:0 18px 55px #183c2e16}*{box-sizing:border-box}html{background:var(--cream)}body{margin:0;min-height:100vh;background:radial-gradient(circle at 100% 0,#dce6d1 0,transparent 25%),var(--cream);color:var(--ink);font-family:Sora,system-ui,sans-serif}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}.hidden{display:none!important}.brand-logo{display:block;object-fit:contain}.brand-logo-auth{width:min(100%,520px);max-height:180px;margin:auto}.brand-logo-menu{width:190px;max-height:75px}.auth{min-height:100vh;display:grid;grid-template-columns:1fr minmax(320px,440px);gap:70px;align-items:center;max-width:1080px;margin:auto;padding:40px}.auth-brand{text-align:center}.auth-brand p,.layout>aside>p{text-transform:uppercase;letter-spacing:.16em;line-height:1.8;font-size:12px}.card{background:#fffdfabf;border:1px solid #fff;border-radius:30px;padding:28px;box-shadow:var(--shadow);backdrop-filter:blur(12px)}.card h1{font-size:28px}.eyebrow{font-size:11px;letter-spacing:.15em;color:#6f8d6b;font-weight:800;text-transform:uppercase}.eyebrow.purple,.purple{color:#8d6dd5}.error{color:#b53e27;min-height:20px}.form label,.auth label{display:flex;flex-direction:column;gap:8px;margin:16px 0;font-size:13px;font-weight:700}.form input,.form textarea,.form select,.auth input,.message-form input{padding:14px;border:1px solid #d7ded4;border-radius:15px;background:#fbfcf8;outline:0}.form input:focus,.form textarea:focus,.auth input:focus{border-color:var(--leaf);box-shadow:0 0 0 3px #7cc56b20}textarea{min-height:125px;resize:vertical}.primary{width:100%;border:0;border-radius:16px;background:var(--green2);color:#fff;padding:14px;font-weight:800;box-shadow:0 8px 20px #14604420}.quiet,.text-link{border:0;background:transparent;color:var(--muted)}.layout{display:grid;grid-template-columns:240px minmax(0,790px);gap:40px;max-width:1100px;margin:auto;padding:28px}.layout>aside{position:sticky;top:28px;height:calc(100vh - 56px);display:flex;flex-direction:column}.layout nav{display:flex;flex-direction:column;gap:7px;margin-top:30px}.layout nav button{border:0;background:transparent;text-align:left;padding:12px;border-radius:15px;color:var(--muted);display:flex;gap:10px;align-items:center}.layout nav button i{font-style:normal;font-size:19px}.layout nav button.on{background:#dce9d2;color:var(--green);font-weight:800}.layout>aside>.quiet{margin-top:auto}.content{background:var(--paper);border-radius:38px;min-height:calc(100vh - 56px);padding:34px;box-shadow:var(--shadow)}.content>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.content h1{margin:4px 0;font-size:30px}.header-actions{display:flex;gap:10px;align-items:center}.header-actions button{border:0;background:#f1f4eb;width:42px;height:42px;border-radius:50%;position:relative}.header-actions button b{position:absolute;width:7px;height:7px;background:var(--orange);border-radius:50%;right:8px;top:7px}.header-actions>span{font-size:12px;background:#eff3e9;padding:9px 12px;border-radius:99px}.notice{background:#eee7fb;color:#67518f;border:1px solid #ddd0f3;padding:12px;border-radius:14px;margin-bottom:16px}.home-intro p{font-size:22px;font-weight:700;margin:5px 0 18px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choices button{position:relative;overflow:hidden;border:0;border-radius:25px;text-align:left;min-height:175px;padding:23px;display:flex;flex-direction:column;align-items:flex-start;background:#dcebd1}.choices button+button{background:#ffe0ca}.choices b{font-size:24px}.choices small{max-width:70%;font-size:12px;line-height:1.5}.choice-mark{align-self:flex-end;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#ffffff80}.choice-art{position:absolute;right:20px;bottom:8px;font-size:58px;opacity:.32}.heading{display:flex;justify-content:space-between;align-items:end;margin:32px 0 13px}.heading h2,.view>h2{margin:5px 0 8px;font-size:28px}.view>p{color:var(--muted);line-height:1.65}.chips,.topic-chips{display:flex;flex-wrap:wrap;gap:8px}.chips button{border:1px solid #d7ded4;background:white;padding:10px 15px;border-radius:99px;text-transform:capitalize}.chips button.on{background:var(--green2);color:#fff;border-color:var(--green2)}.aporto{display:grid;grid-template-columns:70px 1fr;gap:16px;border-bottom:1px solid var(--line);padding:20px 0}.aporto .emoji,.match-icon{background:linear-gradient(145deg,#e8f1e1,#f7eadc);width:70px;height:70px;border-radius:23px;display:grid;place-items:center;font-size:32px}.aporto h3{margin:6px 0;font-size:20px}.aporto p{margin:8px 0;color:var(--muted);line-height:1.5}.meta{display:flex;justify-content:space-between;color:#6c985e;font-size:11px;font-weight:800}.meta b{color:#8d6dd5}.aporto small,.my-aporto small{color:var(--muted)}.actions{display:flex;gap:8px;margin-top:13px}.actions button{border:1px solid #dce3d8;background:#eff5ea;border-radius:13px;padding:10px}.actions button+button{background:#fff0e6;border-color:#ffddc7}.actions button.selected{background:var(--green2);color:white}.topic-chips{margin:9px 0}.topic-chip{padding:6px 10px;border-radius:10px;font-size:11px;font-weight:800;background:#e8f1df;color:#315d45;border:1px solid #dae6d2}.topic-chip.orange{background:#fff0df;color:#96532b;border-color:#f2dbc6}.topic-chip.violet{background:#eee6fa;color:#704e9e;border-color:#ded0f1}.topic-chip.blue{background:#e3eef5;color:#32627a}.own-badge{display:inline-block;margin-top:12px;padding:9px 13px;border-radius:99px;background:#e5eedc;font-size:12px;font-weight:800}.explore-modes{display:flex;gap:9px;margin:18px 0}.explore-modes button{border:1px solid #d7ded4;background:white;border-radius:99px;padding:10px 17px}.explore-modes button.on{background:var(--green2);color:white}.match-deck{min-height:500px}.match-card{position:relative;border:1px solid #dce4d8;border-radius:34px;padding:28px;background:linear-gradient(155deg,#fffefa,#edf4e7);box-shadow:0 20px 55px #17362f17;touch-action:pan-y}.match-card:before{content:"";display:block;height:105px;margin:-28px -28px 20px;border-radius:34px 34px 45% 45%;background:linear-gradient(120deg,#dcebd1,#ffe0ca 55%,#e8def8)}.match-card .match-icon{position:absolute;top:58px;left:28px;border:5px solid #fff}.match-score{position:absolute;right:24px;top:22px;background:#eee5fa;color:#704ea0;border-radius:99px;padding:8px 12px;font-weight:800}.match-card h2{font-size:29px;margin:12px 0}.match-card p{line-height:1.55}.match-card small{line-height:1.7;color:var(--muted)}.match-actions{display:grid;grid-template-columns:65px 1fr 1fr;gap:9px;margin-top:23px}.match-actions button{border:1px solid #d8e0d4;border-radius:17px;padding:13px 8px;background:white}.match-actions .interest{background:#fff0e6}.match-actions .contribute{background:#e3efd9}.candidate,.invitation,.room-card,.user-row,.my-aporto{background:linear-gradient(140deg,#eff5e9,#f1ecf8);border-radius:24px;padding:20px;margin:12px 0}.candidate h3{margin:8px 0;font-size:21px}.candidate .stats,.stats{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.stats span{background:#ffffffba;border-radius:13px;padding:10px;font-size:11px}.candidate .primary{margin-top:15px}.room-card,.user-row,.my-aporto{display:flex;justify-content:space-between;align-items:center}.room-card button{border:0;background:var(--green2);color:white;border-radius:12px;padding:10px 13px}.room-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr);gap:20px}.room-grid>section,.room-grid>aside{background:#f5f7f1;border-radius:24px;padding:17px}.messages{height:390px;overflow:auto;display:flex;flex-direction:column;gap:9px}.message{max-width:85%;background:white;border-radius:16px;padding:11px 13px}.message.mine{align-self:flex-end;background:#dfead5}.message.system{align-self:center;background:#eee7fa;color:#68528d}.message b,.message small{display:block}.message small{font-size:9px;color:var(--muted);margin-top:5px}.message-form{display:grid;grid-template-columns:1fr 90px;gap:8px;margin-top:12px}.member,.proposal{background:white;border-radius:15px;padding:11px;margin:7px 0}.member{display:flex;justify-content:space-between}.proposal-actions,.manage-actions{display:flex;gap:7px;flex-wrap:wrap}.proposal-actions button,.manage-actions button{border:1px solid #d7ded4;background:white;border-radius:10px;padding:8px}.badge{background:var(--orange);color:white;border-radius:99px;padding:3px 7px}.form-help,.semantic-label{color:var(--muted);font-size:12px}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check{flex-direction:row!important;align-items:center}.profile-card{margin-bottom:24px}.profile-card h3{margin:0}.profile-card p{color:var(--muted)}.my-aporto small{display:block;margin-top:5px}
@media(max-width:800px){body{background:var(--paper)}.auth{grid-template-columns:1fr;gap:22px;padding:24px}.auth-brand p{font-size:10px}.brand-logo-auth{width:min(100%,310px)}.layout{display:block;padding:0}.layout>aside{position:static;height:auto;padding:0}.layout>aside>.brand-logo-menu,.layout>aside>p,.layout>aside>.quiet{display:none}.layout nav{position:fixed;z-index:50;left:0;right:0;bottom:0;height:76px;margin:0;padding:7px 6px max(7px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);background:#fffdfbf2;border-top:1px solid #dfe3dc;backdrop-filter:blur(16px)}.layout nav button{min-width:0;padding:4px 1px;justify-content:center;flex-direction:column;gap:2px;text-align:center;font-size:10px}.layout nav button i{font-size:18px}.layout nav .create-nav i{width:48px;height:48px;margin-top:-25px;border:5px solid var(--paper);border-radius:50%;display:grid;place-items:center;background:var(--green2);color:white;font-size:27px;box-shadow:0 7px 20px #17473530}.layout nav .create-nav span{margin-top:-3px}.content{border-radius:0;min-height:100vh;padding:20px 18px 105px;box-shadow:none}.content>header{margin:0 0 28px}.content h1{font-size:27px}.content header small{display:none}.header-actions>span{display:none}.choices{grid-template-columns:1fr 1fr}.choices button{min-height:165px;padding:17px}.choices b{font-size:20px}.choices small{max-width:86%;font-size:10px}.heading h2,.view>h2{font-size:25px}.aporto{grid-template-columns:58px 1fr}.aporto .emoji{width:58px;height:58px;border-radius:19px;font-size:27px}.aporto h3{font-size:18px}.aporto p{font-size:14px}.actions{display:grid;grid-template-columns:1fr 1fr}.actions button{font-size:11px}.match-card{padding:24px}.match-card:before{margin:-24px -24px 20px}.match-card h2{font-size:25px}.match-actions{grid-template-columns:56px 1fr 1fr}.match-actions button{font-size:11px}.row,.room-grid{grid-template-columns:1fr}.messages{height:340px}.my-aporto{align-items:flex-start;flex-direction:column}.manage-actions{width:100%}.manage-actions button{flex:1}.candidate .stats{display:grid;grid-template-columns:1fr 1fr}.brand-logo-menu{width:170px}}@media(max-width:390px){.choices{grid-template-columns:1fr}.match-actions{grid-template-columns:48px 1fr 1fr}.match-card h2{font-size:22px}}
.auth-switch{width:100%;border:0;background:transparent;color:var(--green2);font-weight:700;padding:14px 4px 2px}.onboarding{min-height:100vh;padding:24px;display:grid;place-items:center;background:radial-gradient(circle at 100% 0,#dce9d2 0,transparent 27%),radial-gradient(circle at 0 100%,#fbe3d2 0,transparent 25%),var(--paper)}.onboarding-shell{width:min(100%,600px)}.onboarding-logo{width:210px;max-height:80px;margin:0 auto 24px}.progress{display:flex;justify-content:center;gap:7px;margin-bottom:36px}.progress i{display:block;width:30px;height:5px;border-radius:99px;background:#dfe4dc}.progress i.on{background:var(--green2)}.onboard-step{background:#fffdfacc;border:1px solid #fff;border-radius:34px;padding:34px;box-shadow:var(--shadow)}.onboard-step h1{font-size:34px;margin:7px 0}.onboard-step>p{color:var(--muted);line-height:1.6}.interest-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:24px 0}.interest-grid button{border:1px solid var(--line);background:white;border-radius:18px;padding:14px;display:flex;align-items:center;gap:11px;text-transform:capitalize;text-align:left}.interest-grid button i{font-style:normal;width:35px;height:35px;border-radius:12px;background:#edf3e7;display:grid;place-items:center}.interest-grid button.on{background:var(--green2);border-color:var(--green2);color:white}.interest-grid button.on i{background:#ffffff25}.onboard-success{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e4efd9,#eee5fa);font-size:58px;margin:0 auto 25px}.onboard-step[data-step="3"]{text-align:center}.profile-hero{position:relative;display:flex;align-items:center;gap:17px;padding:22px;border-radius:28px;background:linear-gradient(140deg,#e7f0df,#f3edfa);margin:15px 0 20px}.profile-hero h3{font-size:22px;margin:0 0 5px}.profile-hero p{margin:0;color:var(--muted)}.avatar{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--green2);color:white;font-size:24px;font-weight:800;border:4px solid white}.round-edit{position:absolute;right:16px;top:16px;border:0;border-radius:50%;width:38px;height:38px;background:#fff}.mini-stats{display:flex;gap:12px;margin-top:13px;font-size:10px;color:var(--muted)}.mini-stats span{display:flex;flex-direction:column}.mini-stats b{font-size:15px;color:var(--green)}.profile-about{display:flex;flex-wrap:wrap;gap:9px 16px;color:var(--muted);font-size:13px}.profile-about p{width:100%;line-height:1.55;margin:0}.profile-form-actions{display:grid;grid-template-columns:1fr 2fr;gap:9px}.profile-form-actions>button:first-child{border:1px solid var(--line);border-radius:16px;background:white}.room-top{display:flex;justify-content:space-between}.danger-link{border:0;background:transparent;color:#a54133;font-weight:700}
