/* All Stiles Accounts — uses the theme's palette and type: ink #1d3d4c on #f5f2ec, Italiana headings, DM Sans text. */
:root{--asa-ink:#1d3d4c;--asa-canvas:#f5f2ec;--asa-paper:#fbf9f5;--asa-line:rgba(29,61,76,.18);--asa-line-soft:rgba(29,61,76,.10);--asa-mute:#5f7178;--asa-taupe:#b3a189;--asa-sel:#2f5a3d;--asa-danger:#8a3b2e}

/* ---------- item page save button (sits with the theme's item actions) */
.item-actions .asa-save-btn{border:1px solid var(--asa-ink);background:transparent;color:var(--asa-ink);font:600 12px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}
.item-actions .asa-save-btn:before{content:'';width:13px;height:13px;margin-right:10px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M6 3h12v18l-6-4-6 4z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M6 3h12v18l-6-4-6 4z'/%3E%3C/svg%3E") center/contain no-repeat}
.item-actions .asa-save-btn:hover,.item-actions .asa-save-btn.is-saved{background:var(--asa-ink);color:var(--asa-canvas)}
.item-actions .asa-save-btn.is-saved:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 3h12v18l-6-4-6 4z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 3h12v18l-6-4-6 4z'/%3E%3C/svg%3E")}
.asa-signed-in .header-icons [aria-label="Account"]{position:relative}
.asa-signed-in .header-icons [aria-label="Account"]:after{content:'';position:absolute;right:-2px;top:-1px;width:7px;height:7px;border-radius:50%;background:#c9b48f}

/* ---------- panel additions */
.asa-panel .as-ui-panel{z-index:2}
.asa-panel .asa-title-sm{font-size:clamp(34px,4.6vw,48px);margin:46px 0 12px}
.asa-eyebrow{margin-top:48px;color:var(--asa-mute)}
.asa-eyebrow+.asa-title-sm{margin-top:10px}
.asa-sub{font:400 14px/1.6 'DM Sans',sans-serif;color:var(--asa-ink);margin:0 0 18px}
.asa-msg{font:400 14px/1.55 'DM Sans',sans-serif;background:rgba(29,61,76,.06);border-left:2px solid var(--asa-ink);padding:12px 14px;margin:0 0 16px}
.asa-form label{display:block;margin:18px 0 6px;font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--asa-ink)}
.asa-opt{font-weight:500;letter-spacing:.08em;color:var(--asa-mute);text-transform:none;margin-left:6px}
.asa-select{appearance:none;-webkit-appearance:none;border-radius:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231d3d4c' stroke-width='1.4'/%3E%3C/svg%3E") right 4px center/12px no-repeat;padding-right:24px;cursor:pointer}
.asa-textarea{resize:vertical;min-height:64px;line-height:1.5;font-family:'DM Sans',sans-serif}
.asa-hint{font:400 12px/1.5 'DM Sans',sans-serif;color:var(--asa-mute);margin:8px 0 0}
.asa-smallprint{font:400 12px/1.6 'DM Sans',sans-serif;color:var(--asa-ink);margin:20px 0 0;padding-top:14px;border-top:1px solid var(--asa-line)}
.asa-err{min-height:1em;margin:12px 0 0;font:500 13px/1.5 'DM Sans',sans-serif;color:var(--asa-danger)}
.asa-err.is-ok{color:var(--asa-sel)}
.asa-link,.asa-textlink{border:0;background:none;padding:0;color:var(--asa-ink);font:500 12px 'DM Sans',sans-serif;letter-spacing:.06em;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.asa-later{display:block;margin-top:14px;border:0;background:none;padding:8px 0;color:var(--asa-ink);font:600 11px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.as-ui-submit[disabled],.asa-later[disabled]{opacity:.5;cursor:default}
.asa-btn-link{display:inline-block;text-decoration:none;text-align:center}
.asa-done-actions{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.asa-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.asa-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.asa-chips{display:flex;flex-wrap:wrap;gap:8px}
.asa-chip{margin:0!important;cursor:pointer}
.asa-chip input{position:absolute;opacity:0;pointer-events:none}
.asa-chip span{display:inline-block;padding:9px 14px;border:1px solid var(--asa-line);font:500 12px 'DM Sans',sans-serif;letter-spacing:.04em;text-transform:none;color:var(--asa-ink);transition:.15s}
.asa-chip input:checked+span{background:var(--asa-ink);border-color:var(--asa-ink);color:var(--asa-canvas)}
.asa-chip input:focus-visible+span{outline:2px solid var(--asa-taupe);outline-offset:2px}
.asa-already{margin:0 0 6px;padding:12px 14px;background:rgba(29,61,76,.05);font:400 13px/1.5 'DM Sans',sans-serif}
.asa-already span{display:block;font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.asa-already em{display:block;font-style:normal}

/* ---------- private pages */
.asa-main .page-head .crumbs a{color:inherit}
.asa-titlerow p{max-width:640px}
.asa-section{padding:8px 0 90px}
.asa-app{font-family:'DM Sans',sans-serif;color:var(--asa-ink)}
.asa-loading{color:var(--asa-mute);font-size:14px}
.asa-empty{padding:34px 0;border-top:1px solid var(--asa-line);font-size:15px;line-height:1.6}
.asa-empty-sm{color:var(--asa-mute);font-size:14px;line-height:1.6;margin:6px 0 0}
.asa-meta{font:500 12px 'DM Sans',sans-serif;letter-spacing:.06em;color:var(--asa-mute);margin:6px 0 0}
.asa-muted{color:var(--asa-mute)}
.asa-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 18px;margin-bottom:26px;background:var(--asa-ink);color:var(--asa-canvas);font-size:14px}
.asa-banner a{color:var(--asa-canvas);text-underline-offset:3px}
.asa-banner .asa-x{margin-left:auto;border:0;background:none;color:inherit;font-size:22px;cursor:pointer}

/* sign in / register on the page */
.asa-auth-wrap{display:grid;grid-template-columns:minmax(0,520px) minmax(0,1fr);gap:clamp(30px,6vw,110px);align-items:start;padding-top:10px}
.asa-auth-card{background:var(--asa-paper);border:1px solid var(--asa-line-soft);padding:clamp(24px,4vw,46px)}
.asa-auth-card .as-ui-title{font-size:clamp(38px,4vw,54px);margin:0 0 24px}
.asa-auth-aside{padding-top:12px}
.asa-benefits{list-style:none;margin:18px 0 0;padding:0}
.asa-benefits li{padding:18px 0;border-top:1px solid var(--asa-line);font-size:15px;line-height:1.6}
.asa-benefits strong{display:block;font:400 26px/1.15 Italiana,serif;margin-bottom:4px}

/* account layout */
.asa-account{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
.asa-side{position:sticky;top:110px}
.asa-nav{display:flex;flex-direction:column}
.asa-nav .eyebrow{margin-bottom:10px}
.asa-nav a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid var(--asa-line);color:var(--asa-ink);text-decoration:none;font:400 22px/1.2 Italiana,serif}
.asa-nav a small{font:500 11px 'DM Sans',sans-serif;color:var(--asa-mute)}
.asa-nav a.is-active{font-weight:400;padding-left:12px;border-left:2px solid var(--asa-ink)}
.asa-nav a:hover span{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.asa-newproject{margin-top:14px;align-self:flex-start;border:1px solid var(--asa-ink);background:none;color:var(--asa-ink);padding:11px 16px;font:600 11px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.asa-newproject:hover{background:var(--asa-ink);color:var(--asa-canvas)}
.asa-nav-sep{height:26px}
.asa-side-foot{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:34px}
.asa-detail-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid var(--asa-line)}
.asa-detail-head h2{font:400 clamp(40px,4.4vw,64px)/1 Italiana,serif;margin:8px 0 0}
.asa-head-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.asa-btn{border:0;cursor:pointer;font-family:'DM Sans',sans-serif}
.asa-btn-outline{border:1px solid var(--asa-ink);background:transparent;color:var(--asa-ink);padding:13px 22px;font:600 11px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.asa-btn-outline:hover{background:var(--asa-ink);color:var(--asa-canvas)}
.asa-danger{color:var(--asa-danger)!important}

.asa-room{padding:34px 0 8px}
.asa-room-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.asa-room-head h3{font:400 clamp(28px,2.6vw,38px)/1.1 Italiana,serif;margin:0}
.asa-room-actions{margin-left:auto;display:flex;gap:16px}
.asa-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px}
.asa-card{background:var(--asa-paper);border:1px solid var(--asa-line-soft);display:flex;flex-direction:column}
.asa-card-media{aspect-ratio:4/3;overflow:hidden;background:#e9e3d8}
.asa-card-media a,.asa-card-media img,.asa-card-media .asa-noimg{display:block;width:100%;height:100%}
.asa-card-media img{object-fit:cover;transition:transform .5s ease}
.asa-card-media a:hover img{transform:scale(1.03)}
.asa-noimg{background:linear-gradient(135deg,#e9e3d8,#d9d0c2)}
.asa-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.asa-card-body .eyebrow{font-size:10px;letter-spacing:.18em}
.asa-card-body h4{font:400 26px/1.1 Italiana,serif;margin:0}
.asa-card-body h4 a{color:inherit;text-decoration:none}
.asa-card-body h4 a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.asa-gone{align-self:flex-start;font:600 10px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;background:#efe6d6;color:#6d5a3a;padding:5px 8px}
.asa-fields{display:grid;grid-template-columns:1fr;gap:10px}
.asa-field{display:flex;flex-direction:column;gap:5px;margin:0}
.asa-field>span,.asa-note>span{font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}
.asa-note>span em{font-style:normal;font-weight:500;letter-spacing:.06em;text-transform:none;color:var(--asa-mute);margin-left:6px}
.asa-select-sm{appearance:none;-webkit-appearance:none;border:0;border-bottom:1px solid var(--asa-line);border-radius:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231d3d4c' stroke-width='1.4'/%3E%3C/svg%3E") right 2px center/10px no-repeat;padding:7px 20px 7px 0;font:400 14px 'DM Sans',sans-serif;color:var(--asa-ink);cursor:pointer}
.asa-seg{display:inline-flex;border:1px solid var(--asa-ink);align-self:flex-start}
.asa-seg button{border:0;background:transparent;color:var(--asa-ink);padding:8px 12px;font:600 10px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.asa-seg button.is-on{background:var(--asa-ink);color:var(--asa-canvas)}
.asa-seg button[data-status="selected"].is-on{background:var(--asa-sel)}
.asa-note{display:flex;flex-direction:column;gap:6px;margin:4px 0 0}
.asa-note textarea{border:1px solid var(--asa-line);background:#fff;padding:9px 10px;font:400 14px/1.5 'DM Sans',sans-serif;color:var(--asa-ink);resize:vertical;min-height:56px}
.asa-note textarea:focus,.asa-select-sm:focus{outline:none;border-color:var(--asa-ink)}
.asa-saved-flag{min-height:14px;font-size:11px;color:var(--asa-sel)}
.asa-card-actions{margin-top:auto;padding-top:10px;border-top:1px solid var(--asa-line-soft);display:flex;flex-wrap:wrap;gap:6px 16px}
.asa-card-actions button{border:0;background:none;padding:4px 0;color:var(--asa-ink);font:600 10px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.asa-tags{display:flex;flex-wrap:wrap;gap:6px}
.asa-tag,.asa-status-tag{display:inline-block;padding:5px 9px;font:600 10px 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--asa-line)}
.asa-status-tag.is-selected{background:var(--asa-sel);border-color:var(--asa-sel);color:#fff}
.asa-status-tag.is-considering{background:transparent}

.asa-comments{display:flex;flex-direction:column;gap:8px}
.asa-comments:empty{display:none}
.asa-comments-h{font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--asa-mute)}
.asa-comments-project{margin:22px 0 0;padding:16px 18px;background:var(--asa-paper);border:1px solid var(--asa-line-soft)}
.asa-comment{background:#fff;border-left:2px solid var(--asa-taupe);padding:9px 12px}
.asa-comment-h{display:flex;align-items:baseline;gap:10px;font-size:12px}
.asa-comment-h time{color:var(--asa-mute);font-size:11px}
.asa-comment-x{margin-left:auto;border:0;background:none;color:var(--asa-danger);font:600 9px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.asa-comment p{margin:5px 0 0;font-size:14px;line-height:1.5}

.asa-addroom{margin:38px 0 0;padding-top:24px;border-top:1px solid var(--asa-line);max-width:640px}
.asa-addroom label{display:block;font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.asa-addroom>div{display:flex;gap:16px;align-items:flex-end}
.asa-browse{margin-top:30px;font-size:14px}
.asa-browse a{color:var(--asa-ink)}

/* client links panel */
.asa-links{margin-top:22px;display:flex;flex-direction:column;gap:12px}
.asa-linkrow{padding:14px 0;border-top:1px solid var(--asa-line)}
.asa-linkrow-h{display:flex;justify-content:space-between;font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}
.asa-linkrow-h time{font-weight:500;letter-spacing:.06em;text-transform:none;color:var(--asa-mute);font-size:12px}
.asa-linkrow.is-off{opacity:.6}
.asa-linkurl{font-size:13px!important;padding:10px 2px!important}
.asa-linkrow-a{display:flex;gap:18px;margin-top:10px}
.asa-linkrow-a button,.asa-linkrow-a a{border:0;background:none;padding:0;color:var(--asa-ink);font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;text-decoration:underline;text-underline-offset:4px}

/* client view */
.asa-client-banner{padding:16px 20px;background:var(--asa-ink);color:var(--asa-canvas);font-size:14px;line-height:1.6;margin-bottom:10px}
.asa-client-banner strong{font-weight:600}
.asa-cdetails summary{cursor:pointer;font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:6px 0;text-decoration:underline;text-underline-offset:4px;list-style:none}
.asa-cdetails summary::-webkit-details-marker{display:none}
.asa-cform{margin-top:8px}
.asa-cform textarea{background:#fff;border:1px solid var(--asa-line);padding:9px 10px;font-size:14px}
.asa-cform-row{display:flex;gap:14px;align-items:flex-end;margin-top:8px;flex-wrap:wrap}
.asa-cform-row .as-ui-input{flex:1 1 160px;font-size:14px;padding:10px 2px}
.asa-client-project{max-width:760px}
.asa-client-project .asa-cform textarea{min-height:80px}

/* staff */
.asa-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--asa-line);border-bottom:1px solid var(--asa-line)}
.asa-stat{padding:26px clamp(12px,2vw,30px) 24px 0;display:flex;flex-direction:column;gap:6px}
.asa-stat+.asa-stat{padding-left:clamp(14px,2vw,30px);border-left:1px solid var(--asa-line)}
.asa-stat strong{font:400 clamp(48px,5vw,76px)/1 Italiana,serif}
.asa-stat span{font:600 11px 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase}
.asa-stat small{font-size:13px;color:var(--asa-mute)}
.asa-trend{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:18px}
.asa-trend-card{display:flex;flex-direction:column;gap:6px;text-align:left;border:0;background:none;padding:0;color:var(--asa-ink);cursor:pointer;font-family:'DM Sans',sans-serif}
.asa-trend-card img,.asa-trend-card .asa-noimg{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.asa-trend-card strong{font:400 22px/1.15 Italiana,serif}
.asa-trend-card small{font-size:12px;color:var(--asa-mute)}
.asa-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.asa-table{width:100%;border-collapse:collapse;font-size:14px;min-width:820px}
.asa-table th{text-align:left;font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:10px 12px 10px 0;border-bottom:1px solid var(--asa-ink)}
.asa-table td{padding:12px 12px 12px 0;border-bottom:1px solid var(--asa-line);vertical-align:middle}
.asa-table td span{color:var(--asa-mute);font-size:12px}
.asa-table tbody tr{cursor:pointer}
.asa-table tbody tr:hover,.asa-table tbody tr:focus{background:rgba(29,61,76,.05);outline:none}
.asa-sitem{display:flex;align-items:center;gap:12px}
.asa-thumb{width:48px;height:48px;object-fit:cover;flex:0 0 48px;display:block}
.asa-sitem strong{display:block;font:400 19px/1.15 Italiana,serif}
.asa-sitem small{color:var(--asa-mute);font-size:12px}
.asa-feed{list-style:none;margin:0;padding:0;max-width:900px}
.asa-feed li{display:grid;grid-template-columns:14px 1fr auto;gap:12px;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--asa-line-soft);font-size:14px;line-height:1.5}
.asa-feed em{font-style:normal;text-decoration:underline;text-decoration-color:var(--asa-line);text-underline-offset:3px}
.asa-feed time{font-size:12px;color:var(--asa-mute);white-space:nowrap}
.asa-feed-dot{width:7px;height:7px;border-radius:50%;background:var(--asa-taupe);display:inline-block}
.asa-feed li.is-save .asa-feed-dot{background:var(--asa-ink)}
.asa-drill{list-style:none;margin:16px 0 0;padding:0}
.asa-drill li{padding:14px 0;border-top:1px solid var(--asa-line);display:flex;flex-direction:column;gap:6px;font-size:14px}
.asa-drill-h{display:flex;justify-content:space-between;gap:10px}
.asa-drill-h time{color:var(--asa-mute);font-size:12px}
.asa-drill-mail{color:var(--asa-ink);font-size:13px}

@media(max-width:900px){
  .asa-auth-wrap{grid-template-columns:1fr}
  .asa-account{grid-template-columns:1fr}
  .asa-side{position:static}
  .asa-nav a{font-size:20px}
  .asa-stats{grid-template-columns:1fr}
  .asa-stat+.asa-stat{padding-left:0;border-left:0;border-top:1px solid var(--asa-line)}
}
@media(max-width:600px){
  .asa-cards{grid-template-columns:1fr}
  .asa-detail-head{align-items:flex-start}
  .asa-head-actions{width:100%}
  .asa-head-actions .asa-btn{width:100%}
  .asa-addroom>div{flex-direction:column;align-items:stretch}
  .asa-room-actions{margin-left:0;width:100%}
  .asa-feed li{grid-template-columns:14px 1fr}
  .asa-feed time{grid-column:2}
}
.asa-confirm{font:400 clamp(24px,3vw,32px)/1.25 Italiana,serif;margin:14px 0 26px;color:var(--asa-ink)}
.asa-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);max-width:min(560px,calc(100% - 32px));background:var(--asa-danger);color:#fff;padding:12px 18px;font:500 14px/1.4 'DM Sans',sans-serif;opacity:0;visibility:hidden;transition:.25s;z-index:1100}
.asa-toast.is-on{opacity:1;visibility:visible;transform:translate(-50%,0)}
/* 1.1: size picker before saving, and the finish/size line on saved items. */
.asa-size-pick{display:flex;flex-wrap:wrap;gap:8px}
.asa-size-btn{padding:10px 18px;border:1px solid var(--asa-line);border-radius:30px;background:transparent;color:var(--asa-ink);font:500 13px 'DM Sans',sans-serif;cursor:pointer}
.asa-size-btn:hover,.asa-size-btn:focus-visible{background:#1d3d4c;color:#f5f2ec;border-color:#1d3d4c}
.asa-variant{margin:2px 0 8px;font:500 12px 'DM Sans',sans-serif;letter-spacing:.04em;color:var(--asa-ink)}
