:root{color-scheme:light;--background:#f3f7f5;--surface:#ffffff;--surface-strong:#ecf3f1;--border:#d7e2dd;--text:#102019;--muted:#5d6f66;--teal:#0f766e;--teal-soft:#d4f1ec;--orange:#d97706;--orange-soft:#fff1dc;--red:#b42318;--green:#027a48;--shadow:0 12px 32px rgba(16,32,25,0.08);--radius:8px}*{box-sizing:border-box}body,html{margin:0;min-height:100%;padding:0;background:var(--background);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}input,textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:.8rem .9rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(15,118,110,.14)}textarea{resize:vertical;min-height:96px}.eyebrow{margin:0 0 .45rem;color:var(--teal);font-size:.85rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.danger-button,.danger-outline-button,.logout-link,.primary-button,.secondary-button,.text-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;border-radius:var(--radius);padding:.75rem 1rem;border:1px solid transparent;font-weight:600;transition:transform .2s ease,background-color .2s ease,border-color .2s ease}.danger-button:disabled,.danger-outline-button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:progress;opacity:.75}.primary-button{background:var(--teal);color:#ffffff}.danger-button:hover,.danger-outline-button:hover,.logout-link:hover,.primary-button:hover,.secondary-button:hover,.text-button:hover{transform:translateY(-1px)}.secondary-button{border-color:var(--border);background:var(--surface);color:var(--text)}.danger-button{background:var(--red);color:#ffffff}.danger-outline-button{border-color:rgba(180,35,24,.2);background:rgba(180,35,24,.06);color:var(--red)}.logout-link,.text-button{border-color:var(--border);background:transparent;color:var(--muted)}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(320px,1.15fr) minmax(320px,.85fr)}.login-panel,.login-summary{padding:3rem}.login-summary{background:radial-gradient(circle at top left,rgba(20,184,166,.22),transparent 40%),radial-gradient(circle at bottom right,rgba(217,119,6,.18),transparent 36%),#e9f5f1;display:flex;flex-direction:column;justify-content:center;gap:1.4rem}.login-panel h2,.login-summary h1,.workspace-empty h2,.workspace-header h2{margin:0;line-height:1.05}.login-summary h1{max-width:12ch;font-size:clamp(2.4rem,5vw,4.4rem)}.empty-copy,.empty-state span,.group-link span,.login-summary .lead,.muted-note,.panel-header p,.pin-item p,.section-head p,.workspace-empty p,.workspace-header p{color:var(--muted)}.feature-list{margin:0;padding-left:1.2rem;display:grid;grid-gap:.7rem;gap:.7rem}.demo-credentials{display:inline-flex;flex-direction:column;gap:.25rem;border:1px solid rgba(15,118,110,.18);border-radius:var(--radius);background:rgba(255,255,255,.56);width:-moz-fit-content;width:fit-content;padding:.95rem 1rem}.demo-credentials span{color:var(--muted);font-size:.9rem}.login-panel{display:flex;flex-direction:column;justify-content:center;gap:1.5rem;background:var(--surface)}.panel-header,.section-head{display:flex;flex-direction:column;gap:.35rem}.notice,.panel-header h2,.section-head h2,.section-head h3{margin:0}.notice{border-radius:var(--radius);padding:.85rem 1rem;font-weight:500}.notice.success{background:rgba(2,122,72,.12);color:var(--green)}.form-error,.notice.error{background:rgba(180,35,24,.08);color:var(--red)}.login-actions,.stack-form{display:grid;grid-gap:.95rem;gap:.95rem}.stack-form label{display:grid;grid-gap:.45rem;gap:.45rem;font-weight:600}.form-error,.muted-note{margin:0;padding:.8rem .95rem;border-radius:var(--radius)}.dashboard{min-height:100vh;display:grid;grid-template-columns:320px minmax(0,1fr)}.sidebar{background:#f0f5f2;border-right:1px solid var(--border);padding:1.5rem;display:flex;flex-direction:column;gap:1.2rem}.map-panel-header,.pin-item-head,.sidebar-top,.user-summary,.workspace-header,.workspace-header-actions,.workspace-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.sidebar-top h1,.workspace-empty h2,.workspace-header h2{font-size:2rem}.user-summary{flex-direction:column;align-items:flex-start;gap:.25rem;padding:1rem;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.coordinate-box span,.group-link small,.map-popup small,.member-chip small,.pin-item small,.user-summary span,.workspace-meta span{color:var(--muted)}.group-nav{display:grid;grid-gap:.7rem;gap:.7rem}.composer-panel,.group-link,.owner-panel,.pins-panel,.sidebar-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.group-link{display:grid;grid-gap:.5rem;gap:.5rem;padding:.95rem 1rem;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.group-link strong,.pin-item h4{margin:0}.group-link:hover{transform:translateY(-1px)}.group-link.active{border-color:rgba(15,118,110,.38);box-shadow:0 0 0 3px rgba(15,118,110,.08)}.empty-copy{margin:0;padding:.8rem .2rem 0}.sidebar-section{padding:1rem;display:grid;grid-gap:1rem;gap:1rem}.workspace{padding:1.5rem;display:flex;flex-direction:column;gap:1.4rem}.workspace-notice{margin:0}.workspace-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.35rem}.workspace-header p{margin:.35rem 0 0;max-width:60ch}.workspace-header-actions{align-items:center;flex-wrap:wrap}.workspace-meta{flex-wrap:wrap}.workspace-meta div{min-width:120px;display:grid;grid-gap:.15rem;gap:.15rem}.owner-menu{position:relative}.owner-menu-button{min-width:108px}.burger-icon{display:inline-flex;width:16px;flex-direction:column;gap:3px}.burger-icon span{display:block;width:100%;height:2px;border-radius:999px;background:currentColor}.owner-menu-popover{position:absolute;top:calc(100% + .55rem);right:0;z-index:20;min-width:220px;padding:.45rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.owner-menu-item{width:100%;border:0;border-radius:6px;background:transparent;color:var(--text);padding:.8rem .9rem;text-align:left;font-weight:600}.owner-menu-item:hover{background:var(--surface-strong)}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);grid-gap:1rem;gap:1rem;align-items:start}.map-panel{grid-row:span 2;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.composer-panel,.map-panel-header,.owner-panel,.pins-panel{padding:1rem}.map-panel-header{border-bottom:1px solid var(--border)}.map-panel-header h3{margin:0}.map-panel-header p{margin:.3rem 0 0;color:var(--muted)}.map-canvas,.map-loading{height:min(72vh,760px)}.map-canvas{position:relative}.map-search-shell{position:absolute;top:.9rem;left:.9rem;z-index:2;width:min(420px,calc(100% - 1.8rem))}.map-search-input{background:rgba(255,255,255,.96);box-shadow:var(--shadow)}.map-loading{display:grid;place-items:center;background:var(--surface-strong);color:var(--muted)}.map-loading-overlay{position:absolute;inset:0}.google-map-surface{height:100%;width:100%}.composer-panel,.owner-panel,.pins-panel{display:grid;grid-gap:1rem;gap:1rem;box-shadow:var(--shadow)}.owner-panel-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)}.owner-panel-grid,.owner-subsection{display:grid;grid-gap:1rem;gap:1rem}.managed-member-list{display:grid;grid-gap:.8rem;gap:.8rem}.managed-member-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;background:var(--surface-strong)}.managed-member-meta{display:grid;grid-gap:.2rem;gap:.2rem}.danger-zone p,.managed-member-meta span,.managed-member-meta strong{margin:0}.managed-member-meta span{color:var(--muted)}.managed-member-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.danger-zone{align-content:start;border-radius:var(--radius);background:rgba(180,35,24,.03)}.owner-modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:1rem;background:rgba(16,32,25,.26)}.owner-modal{width:min(1040px,100%);max-height:calc(100vh - 2rem);overflow:auto;display:grid;grid-gap:1rem;gap:1rem}.owner-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:1rem}.coordinate-box,.member-row,.selected-place-box{display:flex;flex-wrap:wrap;gap:.55rem}.coordinate-box{padding:.8rem .95rem;justify-content:space-between}.coordinate-box,.selected-place-box{border-radius:var(--radius);background:var(--orange-soft)}.selected-place-box{flex-direction:column;align-items:flex-start;padding:.85rem .95rem}.selected-place-box span,.selected-place-box strong{margin:0}.selected-place-box span{color:var(--muted)}.member-chip{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border);border-radius:999px;padding:.45rem .7rem;background:var(--surface-strong);font-size:.92rem;white-space:nowrap}.pin-list{display:grid;grid-gap:.8rem;gap:.8rem}.pin-item{border:1px solid var(--border);border-radius:var(--radius);padding:.95rem 1rem;background:var(--surface)}.pin-item p,.pin-note{margin:.35rem 0 .7rem}.you-badge{align-self:flex-start;border-radius:999px;background:var(--teal-soft);color:var(--teal);font-size:.82rem;font-weight:700;padding:.35rem .65rem}.empty-state,.workspace-empty{display:grid;grid-gap:.35rem;gap:.35rem;place-items:start}.empty-state{padding:1rem;border-radius:var(--radius);background:var(--surface-strong)}.empty-state.inline{min-height:210px;place-content:center}.workspace-empty{min-height:60vh;align-content:center;justify-items:start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow)}.empty-state p,.workspace-empty p{margin:0}.map-popup{display:grid;grid-gap:.35rem;gap:.35rem}.map-popup p{margin:0}@media (max-width:1180px){.workspace-grid{grid-template-columns:1fr}.map-panel{grid-row:auto}.owner-panel-grid{grid-template-columns:1fr}.map-canvas,.map-loading{height:60vh}}@media (max-width:960px){.dashboard,.login-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.login-panel,.login-summary,.sidebar,.workspace{padding:1.25rem}.login-summary h1{max-width:16ch}}@media (max-width:640px){.managed-member-item,.map-panel-header,.owner-modal-header,.pin-item-head,.sidebar-top,.workspace-header,.workspace-header-actions{flex-direction:column}.workspace-meta{width:100%}.workspace-meta div{min-width:0}.map-canvas,.map-loading{height:54vh}.managed-member-actions{width:100%;justify-content:flex-start}.owner-menu-button{width:100%}}