*{box-sizing:border-box}:root{--ef-green:#0d4d42;--ef-green-dark:#073e34;--ef-ink:#173b35;--ef-text:#4d5b66;--ef-text-soft:#66727a;--ef-white:#fff;--ef-cream:#f8f5ee;--ef-peach:#f4b6a7;--ef-peach-soft:#fbe1d9;--ef-sage:#dce7d8;--ef-sage-light:#e9f0e5;--ef-border:#d8dad7;--ef-border-soft:#eef0ec;--ef-warm:#f7f1e6;--ef-yellow:#d8a744;--ef-red:#994039;--ef-shadow:0 10px 28px #173b3512;--ef-shadow-hover:0 14px 34px #173b351c}.ef-page{box-sizing:border-box;background:var(--ef-cream);width:100%;min-height:100dvh;color:var(--ef-ink);padding:24px clamp(14px,3vw,30px) 120px;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif}.ef-page--center{background:var(--ef-cream);align-content:center;place-items:center;gap:10px;min-height:100dvh;display:grid}.ef-header{justify-content:space-between;align-items:center;gap:18px;width:100%;max-width:1200px;margin:0 auto 18px;display:flex}.ef-header h1{color:var(--ef-green);letter-spacing:-.5px;margin:0;font-size:clamp(27px,4vw,32px);font-weight:800;line-height:1.15}.ef-header p{color:var(--ef-text-soft);margin:7px 0 0;font-size:14px;line-height:1.5}.ef-secondary-button{border:1px solid var(--ef-border);background:var(--ef-white);min-height:42px;color:var(--ef-green);cursor:pointer;white-space:nowrap;border-radius:13px;padding:8px 16px;font-size:13px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 4px 12px #173b350a}.ef-secondary-button:hover{background:var(--ef-sage-light);transform:translateY(-1px);box-shadow:0 8px 18px #173b3514}.ef-proposals,.ef-spaces-section{width:100%;max-width:1200px;margin-left:auto;margin-right:auto}.ef-proposals{background:var(--ef-peach-soft);border:1px solid #ebc8bf;border-left:5px solid var(--ef-peach);border-radius:18px;margin-bottom:18px;padding:18px;position:relative;box-shadow:0 7px 20px #173b350d}.ef-proposals-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.ef-proposals-heading h2{color:var(--ef-green);margin:0;font-size:19px;font-weight:900;line-height:1.2}.ef-proposals-heading p{color:var(--ef-text);margin:5px 0 14px;font-size:13px;line-height:1.5}.ef-count-badge{background:var(--ef-green);min-width:30px;height:30px;color:var(--ef-white);border-radius:50%;place-items:center;padding:0 8px;font-size:12px;font-weight:900;display:inline-grid;box-shadow:0 4px 10px #0d4d4229}.ef-proposals-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.ef-proposal-card{background:var(--ef-white);border:1px solid var(--ef-border);border-radius:16px;padding:15px;transition:transform .15s,box-shadow .15s;box-shadow:0 5px 15px #173b350a}.ef-proposal-card:hover{box-shadow:var(--ef-shadow-hover);transform:translateY(-2px)}.ef-proposal-head,.ef-card-head{align-items:center;gap:12px;display:flex}.ef-proposal-avatar{background:var(--ef-sage-light);width:48px;height:48px;color:var(--ef-green);border-radius:15px;flex:0 0 48px;place-items:center;font-size:21px;display:grid;box-shadow:inset 0 0 0 1px #0d4d420d}.ef-proposal-head h3{color:var(--ef-ink);margin:0;font-size:16px;font-weight:800}.ef-proposal-head p{color:var(--ef-text-soft);margin:4px 0 0;font-size:12px}.ef-proposal-description{color:var(--ef-text);margin:12px 0 0;font-size:13px;line-height:1.55}.ef-chip-row,.ef-card-stats{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.ef-chip{background:var(--ef-sage-light);width:fit-content;color:var(--ef-green);border:1px solid #0d4d420f;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.ef-proposal-date{color:var(--ef-text-soft);margin:10px 0 0;font-size:11px}.ef-action-row{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;display:grid}.ef-action{min-height:40px;color:var(--ef-white);cursor:pointer;border:0;border-radius:11px;padding:9px 12px;font-size:12px;font-weight:900;transition:transform .15s,box-shadow .15s}.ef-action:hover:not(:disabled){transform:translateY(-1px)}.ef-action:disabled{opacity:.65;cursor:wait}.ef-action--success{background:var(--ef-green);box-shadow:0 6px 14px #0d4d4226}.ef-action--danger{background:var(--ef-red);box-shadow:0 6px 14px #99403921}.ef-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px;width:100%;display:grid}.ef-card{background:var(--ef-white);border:1px solid var(--ef-border);width:100%;min-width:0;box-shadow:var(--ef-shadow);cursor:pointer;border-radius:18px;outline:none;padding:17px;transition:transform .16s,box-shadow .16s,border-color .16s;position:relative}.ef-card:hover,.ef-card:focus-visible{box-shadow:var(--ef-shadow-hover);border-color:#c9d3ce;transform:translateY(-2px)}.ef-avatar-zone{width:76px;min-width:76px;height:76px;position:relative;overflow:visible}.ef-avatar{background:var(--ef-green);width:60px;height:60px;color:var(--ef-white);border-radius:18px;place-items:center;font-size:25px;font-weight:800;display:grid;box-shadow:0 7px 15px #0d4d4226}.ef-badge-stack{width:92px;height:30px;position:absolute;left:42px;overflow:visible}.ef-badge-stack--pending{top:-7px}.ef-badge-stack--valid{bottom:-6px}.ef-round-badge{border:2px solid var(--ef-white);border-radius:50%;place-items:center;width:30px;height:30px;font-size:13px;display:grid;position:absolute;box-shadow:0 3px 8px #173b3524}.ef-round-badge--pending{background:var(--ef-yellow);color:var(--ef-ink);top:0}.ef-round-badge--valid{background:var(--ef-green);color:var(--ef-white);font-weight:900;bottom:0}.ef-name-zone{flex:1;min-width:0}.ef-name-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.ef-name-row h2{color:var(--ef-ink);overflow-wrap:anywhere;margin:0;font-size:19px;font-weight:800;line-height:1.2}.ef-pin{color:var(--ef-green);font-size:11px;font-weight:800}.ef-role{color:var(--ef-text-soft);margin-top:5px;font-size:12px;font-weight:700;display:block}.ef-role--admin{color:var(--ef-green)}.ef-description{color:var(--ef-text);margin:13px 0 0;font-size:13px;line-height:1.55}.ef-message{background:var(--ef-sage-light);color:var(--ef-ink);border:1px solid #0d4d420f;border-radius:12px;margin-top:14px;padding:11px 12px;font-size:13px;line-height:1.5}.ef-closed{background:var(--ef-peach-soft);color:var(--ef-red);border-radius:10px;margin-top:10px;padding:8px 10px;font-size:12px;font-weight:800}.ef-empty{text-align:center;background:var(--ef-white);border:1px dashed var(--ef-border);border-radius:18px;width:100%;max-width:520px;margin:50px auto 0;padding:38px 20px;box-shadow:0 7px 20px #173b350a}.ef-empty-icon{opacity:.9;font-size:42px}.ef-empty h2{color:var(--ef-ink);margin:10px 0 0;font-size:20px;font-weight:800}.ef-empty p{color:var(--ef-text-soft);margin:8px 0 0;font-size:13px;line-height:1.55}.ef-create{background:var(--ef-green);width:58px;height:58px;color:var(--ef-white);cursor:pointer;z-index:50;border:0;border-radius:18px;place-items:center;transition:transform .15s,box-shadow .15s;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 25px #0d4d423d}.ef-create span{font-size:31px;font-weight:300;line-height:1}.ef-create:hover{transform:translateY(-2px);box-shadow:0 16px 30px #0d4d424a}.ef-spinner,.ef-button-spinner{border-radius:50%;animation:.8s linear infinite ef-spin}.ef-spinner{border:4px solid var(--ef-sage);border-top-color:var(--ef-green);width:38px;height:38px}.ef-button-spinner{border:2px solid #fff6;border-top-color:var(--ef-white);width:18px;height:18px}.ef-loading-text{color:var(--ef-text-soft);margin:0;font-size:13px}@keyframes ef-spin{to{transform:rotate(360deg)}}@media (width<=900px){.ef-page{padding-left:14px;padding-right:14px}.ef-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.ef-page{padding:20px 12px 105px}.ef-header{flex-direction:column;align-items:stretch;margin-bottom:14px}.ef-header h1{font-size:27px}.ef-header p{font-size:13px}.ef-secondary-button{width:100%}.ef-grid{grid-template-columns:1fr;gap:12px}.ef-proposals{border-radius:16px;padding:15px}.ef-proposals-list{grid-template-columns:1fr}.ef-card{border-radius:16px;padding:15px}.ef-create{border-radius:16px;width:54px;height:54px;bottom:18px;right:18px}}@media (width<=380px){.ef-page{padding:14px 8px 100px}.ef-header h1{font-size:24px}.ef-header p{font-size:12px}.ef-proposal-card{padding:13px}.ef-action-row{grid-template-columns:1fr}.ef-card{padding:14px}.ef-avatar-zone{width:68px;min-width:68px}.ef-avatar{border-radius:16px;width:54px;height:54px;font-size:23px}.ef-badge-stack{left:35px}.ef-name-row h2{font-size:17px}.ef-description,.ef-message{font-size:12px}.ef-create{bottom:18px;right:16px}}@media (height<=650px){.ef-page{padding-top:12px}.ef-header{margin-bottom:10px}.ef-proposals{margin-bottom:12px}}